hyperx.api
1from __future__ import annotations 2from ..library import _api, _types 3 4from ..api import types 5from typing import TypeVar, Generic, overload 6from enum import Enum 7from System.Collections.Generic import List, IEnumerable, Dictionary, HashSet 8from System.Threading.Tasks import Task 9from System import Guid, DateTime, Action 10 11from abc import ABC, abstractmethod 12 13T = TypeVar('T') 14 15def MakeCSharpIntList(ints: list[int]) -> List[int]: 16 intsList = List[int]() 17 if ints is not None: 18 for thing in ints: 19 if thing is not None: 20 intsList.Add(thing) 21 22 return intsList 23 24class AnalysisResultToReturn(Enum): 25 ''' 26 Used to specify which analysis result to return. 27 ''' 28 Limit = 1 29 Ultimate = 2 30 Minimum = 3 31 32class CollectionModificationStatus(Enum): 33 ''' 34 Indicates whether a collection was manipulated successfully. 35 ''' 36 Success = 1 37 DuplicateIdFailure = 2 38 EntityMissingAddFailure = 3 39 EntityMissingRemovalFailure = 4 40 FemConnectionFailure = 5 41 RunSetUsageFailure = 6 42 EntityRemovalDependencyFailure = 7 43 44class CreateDatabaseStatus(Enum): 45 Success = 1 46 TemplateNotFound = 2 47 ImproperExtension = 3 48 49class MaterialCreationStatus(Enum): 50 ''' 51 Indicates whether a material was created successfully. 52 If not, this indicates why the material was not created. 53 ''' 54 Success = 1 55 DuplicateNameFailure = 2 56 DuplicateFemIdFailure = 3 57 MissingMaterialToCopy = 4 58 59class DbForceUnit(Enum): 60 Pounds = 1 61 Newtons = 2 62 Dekanewtons = 4 63 64class DbLengthUnit(Enum): 65 Inches = 1 66 Feet = 2 67 Meters = 3 68 Centimeters = 4 69 Millimeters = 5 70 71class DbMassUnit(Enum): 72 Pounds = 1 73 Kilograms = 2 74 Slinches = 4 75 Slugs = 5 76 Megagrams = 6 77 78class DbTemperatureUnit(Enum): 79 Fahrenheit = 1 80 Rankine = 2 81 Celsius = 3 82 Kelvin = 4 83 84class ProjectCreationStatus(Enum): 85 ''' 86 Indicates whether a project was created successfully. 87 If not, this indicates why the project was not created. 88 ''' 89 Success = 1 90 Failure = 2 91 DuplicateNameFailure = 3 92 93class ProjectDeletionStatus(Enum): 94 ''' 95 Indicates whether a project was deleted successfully. 96 If not, this indicates why the project was not deleted. 97 ''' 98 Success = 1 99 Failure = 2 100 ProjectDoesNotExistFailure = 3 101 ActiveProjectFailure = 4 102 103class SetUnitsStatus(Enum): 104 Success = 1 105 Error = 2 106 MixedUnitSystemError = 3 107 108class PropertyAssignmentStatus(Enum): 109 Success = 1 110 Failure = 2 111 FailureCollectionAssignment = 3 112 PropertyIsNull = 4 113 PropertyNotFoundInDb = 5 114 EmptyCollection = 6 115 IncompatiblePropertyAssignment = 7 116 EntityDoesNotExist = 8 117 118class RundeckBulkUpdateStatus(Enum): 119 NoRundecksUpdated = 0 120 Success = 1 121 InputFilePathDoesNotExist = 2 122 ResultFilePathDoesNotExist = 3 123 InputFilePathAlreadyExists = 4 124 ResultFilePathAlreadyExists = 5 125 InvalidPathCount = 6 126 RundeckBulkUpdateFailure = 7 127 SuccessButIncompatibleFem = 8 128 129class RundeckCreationStatus(Enum): 130 Success = 1 131 InputFilePathAlreadyExists = 2 132 ResultFilePathAlreadyExists = 3 133 134class RundeckRemoveStatus(Enum): 135 Success = 1 136 InvalidId = 2 137 CannotRemoveLastRundeck = 3 138 CannotDeletePrimaryRundeck = 4 139 RundeckNotFound = 5 140 RundeckRemoveFailure = 6 141 SuccessButIncompatibleFem = 7 142 143class RundeckUpdateStatus(Enum): 144 Success = 1 145 InvalidId = 2 146 IdDoesNotExist = 3 147 RundeckAlreadyPrimary = 4 148 InputPathInUse = 5 149 ResultPathInUse = 6 150 RundeckCommitFailure = 7 151 InputPathDoesNotExist = 8 152 ResultPathDoesNotExist = 9 153 SuccessButIncompatibleFem = 10 154 155class ZoneCreationStatus(Enum): 156 ''' 157 Indicates whether a zone was created successfully. 158 If not, this indicates why the zone was not created. 159 ''' 160 Success = 1 161 DuplicateNameFailure = 2 162 InvalidFamilyCategory = 3 163 164class ZoneIdUpdateStatus(Enum): 165 Success = 1 166 DuplicateIdFailure = 2 167 IdOutOfRangeError = 3 168 169class UnitSystem(Enum): 170 ''' 171 Unit system specified when starting a scripting Application. 172 ''' 173 English = 1 174 SI = 2 175 176class IdEntity(ABC): 177 ''' 178 Represents an entity with an ID. 179 ''' 180 def __init__(self, idEntity: _api.IdEntity): 181 self._Entity = idEntity 182 183 @property 184 def Id(self) -> int: 185 return self._Entity.Id 186 187 188class IdNameEntity(IdEntity): 189 ''' 190 Represents an entity with an ID and Name. 191 ''' 192 def __init__(self, idNameEntity: _api.IdNameEntity): 193 self._Entity = idNameEntity 194 195 @property 196 def Name(self) -> str: 197 return self._Entity.Name 198 199class AnalysisDefinition(IdNameEntity): 200 def __init__(self, analysisDefinition: _api.AnalysisDefinition): 201 self._Entity = analysisDefinition 202 203 @property 204 def AnalysisId(self) -> int: 205 return self._Entity.AnalysisId 206 207 @property 208 def Description(self) -> str: 209 return self._Entity.Description 210 211 212class Margin: 213 ''' 214 Represents a Margin result. 215 ''' 216 def __init__(self, margin: _api.Margin): 217 self._Entity = margin 218 219 @property 220 def AdjustedMargin(self) -> float: 221 return self._Entity.AdjustedMargin 222 223 @property 224 def IsFailureCode(self) -> bool: 225 return self._Entity.IsFailureCode 226 227 @property 228 def IsInformationalCode(self) -> bool: 229 return self._Entity.IsInformationalCode 230 231 @property 232 def MarginCode(self) -> types.MarginCode: 233 return types.MarginCode[self._Entity.MarginCode.ToString()] 234 235 236class AnalysisResult(ABC): 237 ''' 238 Contains result information for an analysis 239 ''' 240 def __init__(self, analysisResult: _api.AnalysisResult): 241 self._Entity = analysisResult 242 243 @property 244 def LimitUltimate(self) -> types.LimitUltimate: 245 ''' 246 Limit vs Ultimate loads. 247 ''' 248 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 249 250 @property 251 def LoadCaseId(self) -> int: 252 return self._Entity.LoadCaseId 253 254 @property 255 def Margin(self) -> Margin: 256 ''' 257 Represents a Margin result. 258 ''' 259 result = self._Entity.Margin 260 return Margin(result) if result is not None else None 261 262 @property 263 def AnalysisDefinition(self) -> AnalysisDefinition: 264 result = self._Entity.AnalysisDefinition 265 return AnalysisDefinition(result) if result is not None else None 266 267 268class JointAnalysisResult(AnalysisResult): 269 def __init__(self, jointAnalysisResult: _api.JointAnalysisResult): 270 self._Entity = jointAnalysisResult 271 272 @property 273 def ObjectId(self) -> types.JointObject: 274 ''' 275 Enum identifying the possible entities within a joint 276 ''' 277 return types.JointObject[self._Entity.ObjectId.ToString()] 278 279 280class ZoneAnalysisConceptResult(AnalysisResult): 281 def __init__(self, zoneAnalysisConceptResult: _api.ZoneAnalysisConceptResult): 282 self._Entity = zoneAnalysisConceptResult 283 284 @property 285 def ConceptId(self) -> types.FamilyConceptUID: 286 return types.FamilyConceptUID[self._Entity.ConceptId.ToString()] 287 288 289class ZoneAnalysisObjectResult(AnalysisResult): 290 def __init__(self, zoneAnalysisObjectResult: _api.ZoneAnalysisObjectResult): 291 self._Entity = zoneAnalysisObjectResult 292 293 @property 294 def ObjectId(self) -> types.FamilyObjectUID: 295 return types.FamilyObjectUID[self._Entity.ObjectId.ToString()] 296 297 298class AssignableProperty(IdNameEntity): 299 def __init__(self, assignableProperty: _api.AssignableProperty): 300 self._Entity = assignableProperty 301 302 303class AssignablePropertyWithFamilyCategory(AssignableProperty): 304 def __init__(self, assignablePropertyWithFamilyCategory: _api.AssignablePropertyWithFamilyCategory): 305 self._Entity = assignablePropertyWithFamilyCategory 306 307 @property 308 def FamilyCategory(self) -> types.FamilyCategory: 309 return types.FamilyCategory[self._Entity.FamilyCategory.ToString()] 310 311 312class FailureObjectGroup(IdNameEntity): 313 def __init__(self, failureObjectGroup: _api.FailureObjectGroup): 314 self._Entity = failureObjectGroup 315 316 @property 317 def ObjectGroup(self) -> types.ObjectGroup: 318 return types.ObjectGroup[self._Entity.ObjectGroup.ToString()] 319 320 @property 321 def IsEnabled(self) -> bool: 322 return self._Entity.IsEnabled 323 324 @property 325 def LimitUltimate(self) -> types.LimitUltimate: 326 ''' 327 Limit vs Ultimate loads. 328 ''' 329 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 330 331 @property 332 def RequiredMargin(self) -> float: 333 return self._Entity.RequiredMargin 334 335 @IsEnabled.setter 336 def IsEnabled(self, value: bool) -> None: 337 self._Entity.IsEnabled = value 338 339 @LimitUltimate.setter 340 def LimitUltimate(self, value: types.LimitUltimate) -> None: 341 self._Entity.LimitUltimate = _types.LimitUltimate(value.value) 342 343 @RequiredMargin.setter 344 def RequiredMargin(self, value: float) -> None: 345 self._Entity.RequiredMargin = value 346 347 348class FailureSetting(IdNameEntity): 349 ''' 350 Setting for a Failure Mode or a Failure Criteria. 351 ''' 352 def __init__(self, failureSetting: _api.FailureSetting): 353 self._Entity = failureSetting 354 355 @property 356 def CategoryId(self) -> int: 357 return self._Entity.CategoryId 358 359 @property 360 def DataType(self) -> types.UserConstantDataType: 361 return types.UserConstantDataType[self._Entity.DataType.ToString()] 362 363 @property 364 def DefaultValue(self) -> str: 365 return self._Entity.DefaultValue 366 367 @property 368 def Description(self) -> str: 369 return self._Entity.Description 370 371 @property 372 def EnumValues(self) -> dict[int, str]: 373 enumValuesDict = {} 374 for kvp in self._Entity.EnumValues: 375 enumValuesDict[int(kvp.Key)] = str(kvp.Value) 376 377 return enumValuesDict 378 379 @property 380 def PackageId(self) -> int: 381 return self._Entity.PackageId 382 383 @property 384 def PackageSettingId(self) -> int: 385 return self._Entity.PackageSettingId 386 387 @property 388 def UID(self) -> Guid: 389 return self._Entity.UID 390 391 @property 392 def Value(self) -> str: 393 return self._Entity.Value 394 395 def SetStringValue(self, value: str) -> None: 396 return self._Entity.SetStringValue(value) 397 398 def SetIntValue(self, value: int) -> None: 399 return self._Entity.SetIntValue(value) 400 401 def SetFloatValue(self, value: float) -> None: 402 return self._Entity.SetFloatValue(value) 403 404 def SetBoolValue(self, value: bool) -> None: 405 return self._Entity.SetBoolValue(value) 406 407 def SetSelectionValue(self, index: int) -> None: 408 return self._Entity.SetSelectionValue(index) 409 410 411class IdEntityCol(Generic[T], ABC): 412 def __init__(self, idEntityCol: _api.IdEntityCol): 413 self._Entity = idEntityCol 414 415 @property 416 def IdEntityColList(self) -> tuple[IdEntity]: 417 if self._Entity.Count() <= 0: 418 return () 419 thisClass = type(self._Entity._items[0]).__name__ 420 givenClass = IdEntity 421 for subclass in IdEntity.__subclasses__(): 422 if subclass.__name__ == thisClass: 423 givenClass = subclass 424 return tuple([givenClass(idEntityCol) for idEntityCol in self._Entity]) 425 426 @property 427 def Ids(self) -> tuple[int]: 428 return tuple([int(int32) for int32 in self._Entity.Ids]) 429 430 def Contains(self, id: int) -> bool: 431 return self._Entity.Contains(id) 432 433 def Count(self) -> int: 434 return self._Entity.Count() 435 436 def Get(self, id: int) -> T: 437 return self._Entity.Get(id) 438 439 def __getitem__(self, index: int): 440 return self.IdEntityColList[index] 441 442 def __iter__(self): 443 yield from self.IdEntityColList 444 445 def __len__(self): 446 return len(self.IdEntityColList) 447 448 449class IdNameEntityCol(IdEntityCol, Generic[T]): 450 def __init__(self, idNameEntityCol: _api.IdNameEntityCol): 451 self._Entity = idNameEntityCol 452 self._CollectedClass = T 453 454 @property 455 def IdNameEntityColList(self) -> tuple[T]: 456 if self._Entity.Count() <= 0: 457 return () 458 thisClass = type(self._Entity._items[0]).__name__ 459 givenClass = T 460 for subclass in T.__subclasses__(): 461 if subclass.__name__ == thisClass: 462 givenClass = subclass 463 return tuple([givenClass(idNameEntityCol) for idNameEntityCol in self._Entity]) 464 465 @property 466 def Names(self) -> tuple[str]: 467 return tuple([str(string) for string in self._Entity.Names]) 468 469 @overload 470 def Get(self, name: str) -> T: ... 471 472 @overload 473 def Get(self, id: int) -> T: ... 474 475 def Get(self, item1 = None) -> T: 476 if isinstance(item1, str): 477 return self._Entity.Get(item1) 478 479 if isinstance(item1, int): 480 return super().Get(item1) 481 482 return self._Entity.Get(item1) 483 484 def __getitem__(self, index: int): 485 return self.IdNameEntityColList[index] 486 487 def __iter__(self): 488 yield from self.IdNameEntityColList 489 490 def __len__(self): 491 return len(self.IdNameEntityColList) 492 493 494class FailureObjectGroupCol(IdNameEntityCol[FailureObjectGroup]): 495 def __init__(self, failureObjectGroupCol: _api.FailureObjectGroupCol): 496 self._Entity = failureObjectGroupCol 497 self._CollectedClass = FailureObjectGroup 498 499 @property 500 def FailureObjectGroupColList(self) -> tuple[FailureObjectGroup]: 501 return tuple([FailureObjectGroup(failureObjectGroupCol) for failureObjectGroupCol in self._Entity]) 502 503 @overload 504 def Get(self, objectGroup: types.ObjectGroup) -> FailureObjectGroup: ... 505 506 @overload 507 def Get(self, name: str) -> FailureObjectGroup: ... 508 509 @overload 510 def Get(self, id: int) -> FailureObjectGroup: ... 511 512 def Get(self, item1 = None) -> FailureObjectGroup: 513 if isinstance(item1, types.ObjectGroup): 514 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value))) 515 516 if isinstance(item1, str): 517 return FailureObjectGroup(super().Get(item1)) 518 519 if isinstance(item1, int): 520 return FailureObjectGroup(super().Get(item1)) 521 522 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value))) 523 524 def __getitem__(self, index: int): 525 return self.FailureObjectGroupColList[index] 526 527 def __iter__(self): 528 yield from self.FailureObjectGroupColList 529 530 def __len__(self): 531 return len(self.FailureObjectGroupColList) 532 533 534class FailureSettingCol(IdNameEntityCol[FailureSetting]): 535 def __init__(self, failureSettingCol: _api.FailureSettingCol): 536 self._Entity = failureSettingCol 537 self._CollectedClass = FailureSetting 538 539 @property 540 def FailureSettingColList(self) -> tuple[FailureSetting]: 541 return tuple([FailureSetting(failureSettingCol) for failureSettingCol in self._Entity]) 542 543 @overload 544 def Get(self, name: str) -> FailureSetting: ... 545 546 @overload 547 def Get(self, id: int) -> FailureSetting: ... 548 549 def Get(self, item1 = None) -> FailureSetting: 550 if isinstance(item1, str): 551 return FailureSetting(super().Get(item1)) 552 553 if isinstance(item1, int): 554 return FailureSetting(super().Get(item1)) 555 556 result = self._Entity.Get(item1) 557 thisClass = type(result).__name__ 558 givenClass = FailureSetting 559 for subclass in FailureSetting.__subclasses__(): 560 if subclass.__name__ == thisClass: 561 givenClass = subclass 562 return givenClass(result) 563 564 def __getitem__(self, index: int): 565 return self.FailureSettingColList[index] 566 567 def __iter__(self): 568 yield from self.FailureSettingColList 569 570 def __len__(self): 571 return len(self.FailureSettingColList) 572 573 574class FailureCriterion(IdNameEntity): 575 def __init__(self, failureCriterion: _api.FailureCriterion): 576 self._Entity = failureCriterion 577 578 @property 579 def Description(self) -> str: 580 return self._Entity.Description 581 582 @property 583 def IsEnabled(self) -> bool: 584 return self._Entity.IsEnabled 585 586 @property 587 def LimitUltimate(self) -> types.LimitUltimate: 588 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 589 590 @property 591 def ObjectGroups(self) -> FailureObjectGroupCol: 592 result = self._Entity.ObjectGroups 593 return FailureObjectGroupCol(result) if result is not None else None 594 595 @property 596 def RequiredMargin(self) -> float: 597 return self._Entity.RequiredMargin 598 599 @property 600 def Settings(self) -> FailureSettingCol: 601 result = self._Entity.Settings 602 return FailureSettingCol(result) if result is not None else None 603 604 @IsEnabled.setter 605 def IsEnabled(self, value: bool) -> None: 606 self._Entity.IsEnabled = value 607 608 @LimitUltimate.setter 609 def LimitUltimate(self, value: types.LimitUltimate) -> None: 610 self._Entity.LimitUltimate = _types.LimitUltimate(value.value) 611 612 @RequiredMargin.setter 613 def RequiredMargin(self, value: float) -> None: 614 self._Entity.RequiredMargin = value 615 616 617class IdNameEntityRenameable(IdNameEntity): 618 def __init__(self, idNameEntityRenameable: _api.IdNameEntityRenameable): 619 self._Entity = idNameEntityRenameable 620 621 def Rename(self, name: str) -> None: 622 return self._Entity.Rename(name) 623 624 625class FailureCriterionCol(IdNameEntityCol[FailureCriterion]): 626 def __init__(self, failureCriterionCol: _api.FailureCriterionCol): 627 self._Entity = failureCriterionCol 628 self._CollectedClass = FailureCriterion 629 630 @property 631 def FailureCriterionColList(self) -> tuple[FailureCriterion]: 632 return tuple([FailureCriterion(failureCriterionCol) for failureCriterionCol in self._Entity]) 633 634 @overload 635 def Get(self, name: str) -> FailureCriterion: ... 636 637 @overload 638 def Get(self, id: int) -> FailureCriterion: ... 639 640 def Get(self, item1 = None) -> FailureCriterion: 641 if isinstance(item1, str): 642 return FailureCriterion(super().Get(item1)) 643 644 if isinstance(item1, int): 645 return FailureCriterion(super().Get(item1)) 646 647 return FailureCriterion(self._Entity.Get(item1)) 648 649 def __getitem__(self, index: int): 650 return self.FailureCriterionColList[index] 651 652 def __iter__(self): 653 yield from self.FailureCriterionColList 654 655 def __len__(self): 656 return len(self.FailureCriterionColList) 657 658 659class FailureMode(IdNameEntityRenameable): 660 def __init__(self, failureMode: _api.FailureMode): 661 self._Entity = failureMode 662 663 @property 664 def AnalysisCategoryId(self) -> int: 665 return self._Entity.AnalysisCategoryId 666 667 @property 668 def AnalysisCategoryName(self) -> str: 669 return self._Entity.AnalysisCategoryName 670 671 @property 672 def Criteria(self) -> FailureCriterionCol: 673 result = self._Entity.Criteria 674 return FailureCriterionCol(result) if result is not None else None 675 676 @property 677 def Settings(self) -> FailureSettingCol: 678 result = self._Entity.Settings 679 return FailureSettingCol(result) if result is not None else None 680 681 682class FailureModeCol(IdNameEntityCol[FailureMode]): 683 def __init__(self, failureModeCol: _api.FailureModeCol): 684 self._Entity = failureModeCol 685 self._CollectedClass = FailureMode 686 687 @property 688 def FailureModeColList(self) -> tuple[FailureMode]: 689 return tuple([FailureMode(failureModeCol) for failureModeCol in self._Entity]) 690 691 @overload 692 def CreateFailureMode(self, failureModeCategoryId: int, name: str = None) -> FailureMode: ... 693 694 @overload 695 def CreateFailureMode(self, failureModeCategory: str, name: str = None) -> FailureMode: ... 696 697 @overload 698 def Get(self, name: str) -> FailureMode: ... 699 700 @overload 701 def Get(self, id: int) -> FailureMode: ... 702 703 def CreateFailureMode(self, item1 = None, item2 = None) -> FailureMode: 704 if isinstance(item1, int) and isinstance(item2, str): 705 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 706 707 if isinstance(item1, str) and isinstance(item2, str): 708 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 709 710 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 711 712 def Get(self, item1 = None) -> FailureMode: 713 if isinstance(item1, str): 714 return FailureMode(super().Get(item1)) 715 716 if isinstance(item1, int): 717 return FailureMode(super().Get(item1)) 718 719 return FailureMode(self._Entity.Get(item1)) 720 721 def __getitem__(self, index: int): 722 return self.FailureModeColList[index] 723 724 def __iter__(self): 725 yield from self.FailureModeColList 726 727 def __len__(self): 728 return len(self.FailureModeColList) 729 730 731class AnalysisProperty(AssignablePropertyWithFamilyCategory): 732 def __init__(self, analysisProperty: _api.AnalysisProperty): 733 self._Entity = analysisProperty 734 735 @property 736 def FailureModes(self) -> FailureModeCol: 737 result = self._Entity.FailureModes 738 return FailureModeCol(result) if result is not None else None 739 740 @overload 741 def AddFailureMode(self, id: int) -> None: ... 742 743 @overload 744 def AddFailureMode(self, ids: tuple[int]) -> None: ... 745 746 @overload 747 def RemoveFailureMode(self, id: int) -> None: ... 748 749 @overload 750 def RemoveFailureMode(self, ids: tuple[int]) -> None: ... 751 752 def AddFailureMode(self, item1 = None) -> None: 753 if isinstance(item1, int): 754 return self._Entity.AddFailureMode(item1) 755 756 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 757 idsList = MakeCSharpIntList(item1) 758 idsEnumerable = IEnumerable(idsList) 759 return self._Entity.AddFailureMode(idsEnumerable) 760 761 return self._Entity.AddFailureMode(item1) 762 763 def RemoveFailureMode(self, item1 = None) -> None: 764 if isinstance(item1, int): 765 return self._Entity.RemoveFailureMode(item1) 766 767 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 768 idsList = MakeCSharpIntList(item1) 769 idsEnumerable = IEnumerable(idsList) 770 return self._Entity.RemoveFailureMode(idsEnumerable) 771 772 return self._Entity.RemoveFailureMode(item1) 773 774 775class DesignProperty(AssignablePropertyWithFamilyCategory): 776 def __init__(self, designProperty: _api.DesignProperty): 777 self._Entity = designProperty 778 779 def Copy(self, newName: str = None) -> DesignProperty: 780 result = self._Entity.Copy(newName) 781 thisClass = type(result).__name__ 782 givenClass = DesignProperty 783 for subclass in DesignProperty.__subclasses__(): 784 if subclass.__name__ == thisClass: 785 givenClass = subclass 786 return givenClass(result) 787 788 789class LoadProperty(AssignableProperty): 790 def __init__(self, loadProperty: _api.LoadProperty): 791 self._Entity = loadProperty 792 793 @property 794 def Category(self) -> types.FamilyCategory: 795 return types.FamilyCategory[self._Entity.Category.ToString()] 796 797 @property 798 def Type(self) -> types.LoadPropertyType: 799 return types.LoadPropertyType[self._Entity.Type.ToString()] 800 801 @property 802 def IsZeroCurvature(self) -> bool: 803 return self._Entity.IsZeroCurvature 804 805 @property 806 def ModificationDate(self) -> DateTime: 807 return self._Entity.ModificationDate 808 809 810class DesignLoadSubcase(IdNameEntity): 811 def __init__(self, designLoadSubcase: _api.DesignLoadSubcase): 812 self._Entity = designLoadSubcase 813 814 @property 815 def RunDeckId(self) -> int: 816 return self._Entity.RunDeckId 817 818 @property 819 def IsThermal(self) -> bool: 820 return self._Entity.IsThermal 821 822 @property 823 def IsEditable(self) -> bool: 824 return self._Entity.IsEditable 825 826 @property 827 def Description(self) -> str: 828 return self._Entity.Description 829 830 @property 831 def ModificationDate(self) -> DateTime: 832 return self._Entity.ModificationDate 833 834 @property 835 def NastranSubcaseId(self) -> int: 836 return self._Entity.NastranSubcaseId 837 838 @property 839 def NastranLoadId(self) -> int: 840 return self._Entity.NastranLoadId 841 842 @property 843 def NastranSpcId(self) -> int: 844 return self._Entity.NastranSpcId 845 846 @property 847 def AbaqusStepName(self) -> str: 848 return self._Entity.AbaqusStepName 849 850 @property 851 def AbaqusLoadCaseName(self) -> str: 852 return self._Entity.AbaqusLoadCaseName 853 854 @property 855 def AbaqusStepTime(self) -> float: 856 return self._Entity.AbaqusStepTime 857 858 @property 859 def RunDeckOrder(self) -> int: 860 return self._Entity.RunDeckOrder 861 862 @property 863 def SolutionType(self) -> types.FeaSolutionType: 864 return types.FeaSolutionType[self._Entity.SolutionType.ToString()] 865 866 867class DesignLoadSubcaseMultiplier(IdNameEntity): 868 def __init__(self, designLoadSubcaseMultiplier: _api.DesignLoadSubcaseMultiplier): 869 self._Entity = designLoadSubcaseMultiplier 870 871 @property 872 def LimitFactor(self) -> float: 873 return self._Entity.LimitFactor 874 875 @property 876 def Subcase(self) -> DesignLoadSubcase: 877 result = self._Entity.Subcase 878 return DesignLoadSubcase(result) if result is not None else None 879 880 @property 881 def UltimateFactor(self) -> float: 882 return self._Entity.UltimateFactor 883 884 @property 885 def Value(self) -> float: 886 return self._Entity.Value 887 888 889class DesignLoadSubcaseTemperature(IdNameEntity): 890 def __init__(self, designLoadSubcaseTemperature: _api.DesignLoadSubcaseTemperature): 891 self._Entity = designLoadSubcaseTemperature 892 893 @property 894 def HasTemperatureSubcase(self) -> bool: 895 return self._Entity.HasTemperatureSubcase 896 897 @property 898 def Subcase(self) -> DesignLoadSubcase: 899 result = self._Entity.Subcase 900 return DesignLoadSubcase(result) if result is not None else None 901 902 @property 903 def TemperatureChoiceType(self) -> types.TemperatureChoiceType: 904 ''' 905 Load Case Setting selection for analysis and initial temperature. 906 ''' 907 return types.TemperatureChoiceType[self._Entity.TemperatureChoiceType.ToString()] 908 909 @property 910 def Value(self) -> float: 911 return self._Entity.Value 912 913 914class DesignLoadSubcaseMultiplierCol(IdNameEntityCol[DesignLoadSubcaseMultiplier]): 915 def __init__(self, designLoadSubcaseMultiplierCol: _api.DesignLoadSubcaseMultiplierCol): 916 self._Entity = designLoadSubcaseMultiplierCol 917 self._CollectedClass = DesignLoadSubcaseMultiplier 918 919 @property 920 def DesignLoadSubcaseMultiplierColList(self) -> tuple[DesignLoadSubcaseMultiplier]: 921 return tuple([DesignLoadSubcaseMultiplier(designLoadSubcaseMultiplierCol) for designLoadSubcaseMultiplierCol in self._Entity]) 922 923 @overload 924 def Get(self, name: str) -> DesignLoadSubcaseMultiplier: ... 925 926 @overload 927 def Get(self, id: int) -> DesignLoadSubcaseMultiplier: ... 928 929 def Get(self, item1 = None) -> DesignLoadSubcaseMultiplier: 930 if isinstance(item1, str): 931 return DesignLoadSubcaseMultiplier(super().Get(item1)) 932 933 if isinstance(item1, int): 934 return DesignLoadSubcaseMultiplier(super().Get(item1)) 935 936 return DesignLoadSubcaseMultiplier(self._Entity.Get(item1)) 937 938 def __getitem__(self, index: int): 939 return self.DesignLoadSubcaseMultiplierColList[index] 940 941 def __iter__(self): 942 yield from self.DesignLoadSubcaseMultiplierColList 943 944 def __len__(self): 945 return len(self.DesignLoadSubcaseMultiplierColList) 946 947 948class DesignLoad(IdNameEntity): 949 def __init__(self, designLoad: _api.DesignLoad): 950 self._Entity = designLoad 951 952 @property 953 def AnalysisTemperature(self) -> DesignLoadSubcaseTemperature: 954 result = self._Entity.AnalysisTemperature 955 return DesignLoadSubcaseTemperature(result) if result is not None else None 956 957 @property 958 def InitialTemperature(self) -> DesignLoadSubcaseTemperature: 959 result = self._Entity.InitialTemperature 960 return DesignLoadSubcaseTemperature(result) if result is not None else None 961 962 @property 963 def Description(self) -> str: 964 return self._Entity.Description 965 966 @property 967 def IsActive(self) -> bool: 968 return self._Entity.IsActive 969 970 @property 971 def IsEditable(self) -> bool: 972 return self._Entity.IsEditable 973 974 @property 975 def IsVirtual(self) -> bool: 976 return self._Entity.IsVirtual 977 978 @property 979 def ModificationDate(self) -> DateTime: 980 return self._Entity.ModificationDate 981 982 @property 983 def SubcaseMultipliers(self) -> DesignLoadSubcaseMultiplierCol: 984 result = self._Entity.SubcaseMultipliers 985 return DesignLoadSubcaseMultiplierCol(result) if result is not None else None 986 987 @property 988 def Types(self) -> list[types.LoadCaseType]: 989 return [types.LoadCaseType[loadCaseType.ToString()] for loadCaseType in self._Entity.Types] 990 991 @property 992 def UID(self) -> Guid: 993 return self._Entity.UID 994 995 996class JointDesignResult(IdEntity): 997 def __init__(self, jointDesignResult: _api.JointDesignResult): 998 self._Entity = jointDesignResult 999 1000 1001class ZoneDesignResult(IdEntity): 1002 def __init__(self, zoneDesignResult: _api.ZoneDesignResult): 1003 self._Entity = zoneDesignResult 1004 1005 @property 1006 def VariableParameter(self) -> types.VariableParameter: 1007 return types.VariableParameter[self._Entity.VariableParameter.ToString()] 1008 1009 @property 1010 def Value(self) -> float: 1011 return self._Entity.Value 1012 1013 @property 1014 def MaterialId(self) -> int: 1015 return self._Entity.MaterialId 1016 1017 @property 1018 def MaterialType(self) -> types.MaterialType: 1019 return types.MaterialType[self._Entity.MaterialType.ToString()] 1020 1021 1022class Vector3d: 1023 ''' 1024 Represents a readonly 3D vector. 1025 ''' 1026 def __init__(self, vector3d: _api.Vector3d): 1027 self._Entity = vector3d 1028 1029 def Create_Vector3d(x: float, y: float, z: float): 1030 return Vector3d(_api.Vector3d(x, y, z)) 1031 1032 @property 1033 def X(self) -> float: 1034 return self._Entity.X 1035 1036 @property 1037 def Y(self) -> float: 1038 return self._Entity.Y 1039 1040 @property 1041 def Z(self) -> float: 1042 return self._Entity.Z 1043 1044 @overload 1045 def Equals(self, other) -> bool: ... 1046 1047 @overload 1048 def Equals(self, obj) -> bool: ... 1049 1050 def GetHashCode(self) -> int: 1051 return self._Entity.GetHashCode() 1052 1053 def Equals(self, item1 = None) -> bool: 1054 if isinstance(item1, Vector3d): 1055 return self._Entity.Equals(item1._Entity) 1056 1057 return self._Entity.Equals(item1._Entity) 1058 1059 def __eq__(self, other): 1060 return self.Equals(other) 1061 1062 def __ne__(self, other): 1063 return not self.Equals(other) 1064 1065 1066class DiscreteField(IdNameEntityRenameable): 1067 ''' 1068 Represents a table of discrete field data. 1069 ''' 1070 def __init__(self, discreteField: _api.DiscreteField): 1071 self._Entity = discreteField 1072 1073 @property 1074 def Columns(self) -> dict[int, str]: 1075 columnsDict = {} 1076 for kvp in self._Entity.Columns: 1077 columnsDict[int(kvp.Key)] = str(kvp.Value) 1078 1079 return columnsDict 1080 1081 @property 1082 def ColumnCount(self) -> int: 1083 return self._Entity.ColumnCount 1084 1085 @property 1086 def DataType(self) -> types.DiscreteFieldDataType: 1087 ''' 1088 Defines the type of data stored in a Discrete Field. Such as Vector, Scalar, String. 1089 ''' 1090 return types.DiscreteFieldDataType[self._Entity.DataType.ToString()] 1091 1092 @property 1093 def PhysicalEntityType(self) -> types.DiscreteFieldPhysicalEntityType: 1094 ''' 1095 Defines the type of physical entity that a Discrete Field applies to, such as zone, element, joint, etc. 1096 ''' 1097 return types.DiscreteFieldPhysicalEntityType[self._Entity.PhysicalEntityType.ToString()] 1098 1099 @property 1100 def PointIds(self) -> list[Vector3d]: 1101 return [Vector3d(vector3d) for vector3d in self._Entity.PointIds] 1102 1103 @property 1104 def RowCount(self) -> int: 1105 return self._Entity.RowCount 1106 1107 @property 1108 def RowIds(self) -> list[int]: 1109 return [int32 for int32 in self._Entity.RowIds] 1110 1111 def AddColumn(self, name: str) -> int: 1112 return self._Entity.AddColumn(name) 1113 1114 def AddPointRow(self, pointId: Vector3d) -> None: 1115 return self._Entity.AddPointRow(pointId._Entity) 1116 1117 @overload 1118 def ReadNumericCell(self, entityId: int, columnId: int) -> float: ... 1119 1120 @overload 1121 def ReadNumericCell(self, pointId: Vector3d, columnId: int) -> float: ... 1122 1123 @overload 1124 def ReadStringCell(self, entityId: int, columnId: int) -> str: ... 1125 1126 @overload 1127 def ReadStringCell(self, pointId: Vector3d, columnId: int) -> str: ... 1128 1129 def SetColumnName(self, columnId: int, name: str) -> None: 1130 return self._Entity.SetColumnName(columnId, name) 1131 1132 @overload 1133 def SetNumericValue(self, entityId: int, columnId: int, value: float) -> None: ... 1134 1135 @overload 1136 def SetNumericValue(self, pointId: Vector3d, columnId: int, value: float) -> None: ... 1137 1138 @overload 1139 def SetStringValue(self, entityId: int, columnId: int, value: str) -> None: ... 1140 1141 @overload 1142 def SetStringValue(self, pointId: Vector3d, columnId: int, value: str) -> None: ... 1143 1144 def DeleteAllRows(self) -> None: 1145 ''' 1146 Delete all rows for this discrete field. 1147 ''' 1148 return self._Entity.DeleteAllRows() 1149 1150 def DeleteColumn(self, columnId: int) -> None: 1151 return self._Entity.DeleteColumn(columnId) 1152 1153 def DeletePointRow(self, pointId: Vector3d) -> None: 1154 return self._Entity.DeletePointRow(pointId._Entity) 1155 1156 def DeleteRow(self, entityId: int) -> None: 1157 return self._Entity.DeleteRow(entityId) 1158 1159 def DeleteRowsAndColumns(self) -> None: 1160 ''' 1161 Delete all rows and columns for this discrete field. 1162 ''' 1163 return self._Entity.DeleteRowsAndColumns() 1164 1165 def ReadNumericCell(self, item1 = None, item2 = None) -> float: 1166 if isinstance(item1, int) and isinstance(item2, int): 1167 return self._Entity.ReadNumericCell(item1, item2) 1168 1169 if isinstance(item1, Vector3d) and isinstance(item2, int): 1170 return self._Entity.ReadNumericCell(item1._Entity, item2) 1171 1172 return self._Entity.ReadNumericCell(item1, item2) 1173 1174 def ReadStringCell(self, item1 = None, item2 = None) -> str: 1175 if isinstance(item1, int) and isinstance(item2, int): 1176 return self._Entity.ReadStringCell(item1, item2) 1177 1178 if isinstance(item1, Vector3d) and isinstance(item2, int): 1179 return self._Entity.ReadStringCell(item1._Entity, item2) 1180 1181 return self._Entity.ReadStringCell(item1, item2) 1182 1183 def SetNumericValue(self, item1 = None, item2 = None, item3 = None) -> None: 1184 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, float): 1185 return self._Entity.SetNumericValue(item1, item2, item3) 1186 1187 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, float): 1188 return self._Entity.SetNumericValue(item1._Entity, item2, item3) 1189 1190 return self._Entity.SetNumericValue(item1, item2, item3) 1191 1192 def SetStringValue(self, item1 = None, item2 = None, item3 = None) -> None: 1193 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, str): 1194 return self._Entity.SetStringValue(item1, item2, item3) 1195 1196 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, str): 1197 return self._Entity.SetStringValue(item1._Entity, item2, item3) 1198 1199 return self._Entity.SetStringValue(item1, item2, item3) 1200 1201 1202class Node(IdEntity): 1203 def __init__(self, node: _api.Node): 1204 self._Entity = node 1205 1206 @property 1207 def X(self) -> float: 1208 return self._Entity.X 1209 1210 @property 1211 def Y(self) -> float: 1212 return self._Entity.Y 1213 1214 @property 1215 def Z(self) -> float: 1216 return self._Entity.Z 1217 1218 1219class Centroid: 1220 def __init__(self, centroid: _api.Centroid): 1221 self._Entity = centroid 1222 1223 @property 1224 def X(self) -> float: 1225 return self._Entity.X 1226 1227 @property 1228 def Y(self) -> float: 1229 return self._Entity.Y 1230 1231 @property 1232 def Z(self) -> float: 1233 return self._Entity.Z 1234 1235 1236class Element(IdEntity): 1237 def __init__(self, element: _api.Element): 1238 self._Entity = element 1239 1240 @property 1241 def MarginOfSafety(self) -> float: 1242 return self._Entity.MarginOfSafety 1243 1244 @property 1245 def Centroid(self) -> Centroid: 1246 result = self._Entity.Centroid 1247 return Centroid(result) if result is not None else None 1248 1249 @property 1250 def Nodes(self) -> list[Node]: 1251 return [Node(node) for node in self._Entity.Nodes] 1252 1253 1254class FailureModeCategory(IdNameEntity): 1255 def __init__(self, failureModeCategory: _api.FailureModeCategory): 1256 self._Entity = failureModeCategory 1257 1258 @property 1259 def PackageId(self) -> int: 1260 return self._Entity.PackageId 1261 1262 1263class EntityWithAssignableProperties(IdNameEntityRenameable): 1264 def __init__(self, entityWithAssignableProperties: _api.EntityWithAssignableProperties): 1265 self._Entity = entityWithAssignableProperties 1266 1267 @property 1268 def AssignedAnalysisProperty(self) -> AnalysisProperty: 1269 result = self._Entity.AssignedAnalysisProperty 1270 return AnalysisProperty(result) if result is not None else None 1271 1272 @property 1273 def AssignedDesignProperty(self) -> DesignProperty: 1274 thisClass = type(self._Entity.AssignedDesignProperty).__name__ 1275 givenClass = DesignProperty 1276 for subclass in DesignProperty.__subclasses__(): 1277 if subclass.__name__ == thisClass: 1278 givenClass = subclass 1279 result = self._Entity.AssignedDesignProperty 1280 return givenClass(result) if result is not None else None 1281 1282 @property 1283 def AssignedLoadProperty(self) -> LoadProperty: 1284 thisClass = type(self._Entity.AssignedLoadProperty).__name__ 1285 givenClass = LoadProperty 1286 for subclass in LoadProperty.__subclasses__(): 1287 if subclass.__name__ == thisClass: 1288 givenClass = subclass 1289 result = self._Entity.AssignedLoadProperty 1290 return givenClass(result) if result is not None else None 1291 1292 def AssignAnalysisProperty(self, id: int) -> PropertyAssignmentStatus: 1293 return PropertyAssignmentStatus[self._Entity.AssignAnalysisProperty(id).ToString()] 1294 1295 def AssignDesignProperty(self, id: int) -> PropertyAssignmentStatus: 1296 return PropertyAssignmentStatus[self._Entity.AssignDesignProperty(id).ToString()] 1297 1298 def AssignLoadProperty(self, id: int) -> PropertyAssignmentStatus: 1299 return PropertyAssignmentStatus[self._Entity.AssignLoadProperty(id).ToString()] 1300 1301 def AssignProperty(self, property: AssignableProperty) -> PropertyAssignmentStatus: 1302 return PropertyAssignmentStatus[self._Entity.AssignProperty(property._Entity).ToString()] 1303 1304 1305class AnalysisResultCol(Generic[T]): 1306 def __init__(self, analysisResultCol: _api.AnalysisResultCol): 1307 self._Entity = analysisResultCol 1308 1309 @property 1310 def AnalysisResultColList(self) -> tuple[AnalysisResult]: 1311 if self._Entity.Count() <= 0: 1312 return () 1313 thisClass = type(self._Entity._items[0]).__name__ 1314 givenClass = AnalysisResult 1315 for subclass in AnalysisResult.__subclasses__(): 1316 if subclass.__name__ == thisClass: 1317 givenClass = subclass 1318 return tuple([givenClass(analysisResultCol) for analysisResultCol in self._Entity]) 1319 1320 def Count(self) -> int: 1321 return self._Entity.Count() 1322 1323 def __getitem__(self, index: int): 1324 return self.AnalysisResultColList[index] 1325 1326 def __iter__(self): 1327 yield from self.AnalysisResultColList 1328 1329 def __len__(self): 1330 return len(self.AnalysisResultColList) 1331 1332 1333class ZoneJointEntity(EntityWithAssignableProperties): 1334 ''' 1335 Abstract base for a Zone or Joint. 1336 ''' 1337 def __init__(self, zoneJointEntity: _api.ZoneJointEntity): 1338 self._Entity = zoneJointEntity 1339 1340 @abstractmethod 1341 def GetMinimumMargin(self) -> Margin: 1342 return Margin(self._Entity.GetMinimumMargin()) 1343 1344 @abstractmethod 1345 def GetControllingResult(self) -> AnalysisResult: 1346 result = self._Entity.GetControllingResult() 1347 thisClass = type(result).__name__ 1348 givenClass = AnalysisResult 1349 for subclass in AnalysisResult.__subclasses__(): 1350 if subclass.__name__ == thisClass: 1351 givenClass = subclass 1352 return givenClass(result) 1353 1354 @abstractmethod 1355 def GetAllResults(self) -> AnalysisResultCol: 1356 return AnalysisResultCol(self._Entity.GetAllResults()) 1357 1358 1359class JointDesignResultCol(IdEntityCol[JointDesignResult]): 1360 def __init__(self, jointDesignResultCol: _api.JointDesignResultCol): 1361 self._Entity = jointDesignResultCol 1362 self._CollectedClass = JointDesignResult 1363 1364 @property 1365 def JointDesignResultColList(self) -> tuple[JointDesignResult]: 1366 return tuple([JointDesignResult(jointDesignResultCol) for jointDesignResultCol in self._Entity]) 1367 1368 @overload 1369 def Get(self, jointSelectionId: types.JointSelectionId) -> JointDesignResult: ... 1370 1371 @overload 1372 def Get(self, jointRangeId: types.JointRangeId) -> JointDesignResult: ... 1373 1374 @overload 1375 def Get(self, id: int) -> JointDesignResult: ... 1376 1377 def Get(self, item1 = None) -> JointDesignResult: 1378 if isinstance(item1, types.JointSelectionId): 1379 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1380 thisClass = type(result).__name__ 1381 givenClass = JointDesignResult 1382 for subclass in JointDesignResult.__subclasses__(): 1383 if subclass.__name__ == thisClass: 1384 givenClass = subclass 1385 return givenClass(result) 1386 1387 if isinstance(item1, types.JointRangeId): 1388 result = self._Entity.Get(_types.JointRangeId(item1.value)) 1389 thisClass = type(result).__name__ 1390 givenClass = JointDesignResult 1391 for subclass in JointDesignResult.__subclasses__(): 1392 if subclass.__name__ == thisClass: 1393 givenClass = subclass 1394 return givenClass(result) 1395 1396 if isinstance(item1, int): 1397 return JointDesignResult(super().Get(item1)) 1398 1399 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1400 thisClass = type(result).__name__ 1401 givenClass = JointDesignResult 1402 for subclass in JointDesignResult.__subclasses__(): 1403 if subclass.__name__ == thisClass: 1404 givenClass = subclass 1405 return givenClass(result) 1406 1407 def __getitem__(self, index: int): 1408 return self.JointDesignResultColList[index] 1409 1410 def __iter__(self): 1411 yield from self.JointDesignResultColList 1412 1413 def __len__(self): 1414 return len(self.JointDesignResultColList) 1415 1416 1417class Joint(ZoneJointEntity): 1418 def __init__(self, joint: _api.Joint): 1419 self._Entity = joint 1420 1421 @property 1422 def JointRangeSizingResults(self) -> JointDesignResultCol: 1423 result = self._Entity.JointRangeSizingResults 1424 return JointDesignResultCol(result) if result is not None else None 1425 1426 @property 1427 def JointSelectionSizingResults(self) -> JointDesignResultCol: 1428 result = self._Entity.JointSelectionSizingResults 1429 return JointDesignResultCol(result) if result is not None else None 1430 1431 def GetAllResults(self) -> AnalysisResultCol: 1432 return AnalysisResultCol(self._Entity.GetAllResults()) 1433 1434 def GetControllingResult(self) -> AnalysisResult: 1435 result = self._Entity.GetControllingResult() 1436 thisClass = type(result).__name__ 1437 givenClass = AnalysisResult 1438 for subclass in AnalysisResult.__subclasses__(): 1439 if subclass.__name__ == thisClass: 1440 givenClass = subclass 1441 return givenClass(result) 1442 1443 def GetMinimumMargin(self) -> Margin: 1444 return Margin(self._Entity.GetMinimumMargin()) 1445 1446 1447class ZoneDesignResultCol(IdEntityCol[ZoneDesignResult]): 1448 def __init__(self, zoneDesignResultCol: _api.ZoneDesignResultCol): 1449 self._Entity = zoneDesignResultCol 1450 self._CollectedClass = ZoneDesignResult 1451 1452 @property 1453 def ZoneDesignResultColList(self) -> tuple[ZoneDesignResult]: 1454 return tuple([ZoneDesignResult(zoneDesignResultCol) for zoneDesignResultCol in self._Entity]) 1455 1456 @overload 1457 def Get(self, parameterId: types.VariableParameter) -> ZoneDesignResult: ... 1458 1459 @overload 1460 def Get(self, id: int) -> ZoneDesignResult: ... 1461 1462 def Get(self, item1 = None) -> ZoneDesignResult: 1463 if isinstance(item1, types.VariableParameter): 1464 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value))) 1465 1466 if isinstance(item1, int): 1467 return ZoneDesignResult(super().Get(item1)) 1468 1469 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value))) 1470 1471 def __getitem__(self, index: int): 1472 return self.ZoneDesignResultColList[index] 1473 1474 def __iter__(self): 1475 yield from self.ZoneDesignResultColList 1476 1477 def __len__(self): 1478 return len(self.ZoneDesignResultColList) 1479 1480 1481class ZoneBase(ZoneJointEntity): 1482 ''' 1483 Abstract for regular Zones and Panel Segments. 1484 ''' 1485 def __init__(self, zoneBase: _api.ZoneBase): 1486 self._Entity = zoneBase 1487 1488 @property 1489 def Centroid(self) -> Centroid: 1490 result = self._Entity.Centroid 1491 return Centroid(result) if result is not None else None 1492 1493 @property 1494 def Id(self) -> int: 1495 return self._Entity.Id 1496 1497 @property 1498 def Weight(self) -> float: 1499 return self._Entity.Weight 1500 1501 @property 1502 def NonOptimumFactor(self) -> float: 1503 return self._Entity.NonOptimumFactor 1504 1505 @property 1506 def AddedWeight(self) -> float: 1507 return self._Entity.AddedWeight 1508 1509 @property 1510 def SuperimposePanel(self) -> bool: 1511 return self._Entity.SuperimposePanel 1512 1513 @property 1514 def BucklingImperfection(self) -> float: 1515 return self._Entity.BucklingImperfection 1516 1517 @property 1518 def IsBeamColumn(self) -> bool: 1519 return self._Entity.IsBeamColumn 1520 1521 @property 1522 def SuperimposeBoundaryCondition(self) -> int: 1523 return self._Entity.SuperimposeBoundaryCondition 1524 1525 @property 1526 def IsZeroOutFeaMoments(self) -> bool: 1527 return self._Entity.IsZeroOutFeaMoments 1528 1529 @property 1530 def IsZeroOutFeaTransverseShears(self) -> bool: 1531 return self._Entity.IsZeroOutFeaTransverseShears 1532 1533 @property 1534 def MechanicalLimit(self) -> float: 1535 return self._Entity.MechanicalLimit 1536 1537 @property 1538 def MechanicalUltimate(self) -> float: 1539 return self._Entity.MechanicalUltimate 1540 1541 @property 1542 def ThermalHelp(self) -> float: 1543 return self._Entity.ThermalHelp 1544 1545 @property 1546 def ThermalHurt(self) -> float: 1547 return self._Entity.ThermalHurt 1548 1549 @property 1550 def FatigueKTSkin(self) -> float: 1551 return self._Entity.FatigueKTSkin 1552 1553 @property 1554 def FatigueKTStiff(self) -> float: 1555 return self._Entity.FatigueKTStiff 1556 1557 @property 1558 def XSpan(self) -> float: 1559 return self._Entity.XSpan 1560 1561 @property 1562 def EARequired(self) -> float: 1563 return self._Entity.EARequired 1564 1565 @property 1566 def EI1Required(self) -> float: 1567 return self._Entity.EI1Required 1568 1569 @property 1570 def EI2Required(self) -> float: 1571 return self._Entity.EI2Required 1572 1573 @property 1574 def GJRequired(self) -> float: 1575 return self._Entity.GJRequired 1576 1577 @property 1578 def EAAuto(self) -> float: 1579 return self._Entity.EAAuto 1580 1581 @property 1582 def EI1Auto(self) -> float: 1583 return self._Entity.EI1Auto 1584 1585 @property 1586 def EI2Auto(self) -> float: 1587 return self._Entity.EI2Auto 1588 1589 @property 1590 def GJAuto(self) -> float: 1591 return self._Entity.GJAuto 1592 1593 @property 1594 def Ex(self) -> float: 1595 return self._Entity.Ex 1596 1597 @property 1598 def Dmid(self) -> float: 1599 return self._Entity.Dmid 1600 1601 @NonOptimumFactor.setter 1602 def NonOptimumFactor(self, value: float) -> None: 1603 self._Entity.NonOptimumFactor = value 1604 1605 @AddedWeight.setter 1606 def AddedWeight(self, value: float) -> None: 1607 self._Entity.AddedWeight = value 1608 1609 @SuperimposePanel.setter 1610 def SuperimposePanel(self, value: bool) -> None: 1611 self._Entity.SuperimposePanel = value 1612 1613 @BucklingImperfection.setter 1614 def BucklingImperfection(self, value: float) -> None: 1615 self._Entity.BucklingImperfection = value 1616 1617 @IsBeamColumn.setter 1618 def IsBeamColumn(self, value: bool) -> None: 1619 self._Entity.IsBeamColumn = value 1620 1621 @SuperimposeBoundaryCondition.setter 1622 def SuperimposeBoundaryCondition(self, value: int) -> None: 1623 self._Entity.SuperimposeBoundaryCondition = value 1624 1625 @IsZeroOutFeaMoments.setter 1626 def IsZeroOutFeaMoments(self, value: bool) -> None: 1627 self._Entity.IsZeroOutFeaMoments = value 1628 1629 @IsZeroOutFeaTransverseShears.setter 1630 def IsZeroOutFeaTransverseShears(self, value: bool) -> None: 1631 self._Entity.IsZeroOutFeaTransverseShears = value 1632 1633 @MechanicalLimit.setter 1634 def MechanicalLimit(self, value: float) -> None: 1635 self._Entity.MechanicalLimit = value 1636 1637 @MechanicalUltimate.setter 1638 def MechanicalUltimate(self, value: float) -> None: 1639 self._Entity.MechanicalUltimate = value 1640 1641 @ThermalHelp.setter 1642 def ThermalHelp(self, value: float) -> None: 1643 self._Entity.ThermalHelp = value 1644 1645 @ThermalHurt.setter 1646 def ThermalHurt(self, value: float) -> None: 1647 self._Entity.ThermalHurt = value 1648 1649 @FatigueKTSkin.setter 1650 def FatigueKTSkin(self, value: float) -> None: 1651 self._Entity.FatigueKTSkin = value 1652 1653 @FatigueKTStiff.setter 1654 def FatigueKTStiff(self, value: float) -> None: 1655 self._Entity.FatigueKTStiff = value 1656 1657 @XSpan.setter 1658 def XSpan(self, value: float) -> None: 1659 self._Entity.XSpan = value 1660 1661 @EARequired.setter 1662 def EARequired(self, value: float) -> None: 1663 self._Entity.EARequired = value 1664 1665 @EI1Required.setter 1666 def EI1Required(self, value: float) -> None: 1667 self._Entity.EI1Required = value 1668 1669 @EI2Required.setter 1670 def EI2Required(self, value: float) -> None: 1671 self._Entity.EI2Required = value 1672 1673 @GJRequired.setter 1674 def GJRequired(self, value: float) -> None: 1675 self._Entity.GJRequired = value 1676 1677 @Ex.setter 1678 def Ex(self, value: float) -> None: 1679 self._Entity.Ex = value 1680 1681 @Dmid.setter 1682 def Dmid(self, value: float) -> None: 1683 self._Entity.Dmid = value 1684 1685 def GetObjectName(self, objectId: types.FamilyObjectUID) -> str: 1686 return self._Entity.GetObjectName(_types.FamilyObjectUID(objectId.value)) 1687 1688 def GetConceptName(self) -> str: 1689 return self._Entity.GetConceptName() 1690 1691 def GetZoneDesignResults(self, solutionId: int = 1) -> ZoneDesignResultCol: 1692 return ZoneDesignResultCol(self._Entity.GetZoneDesignResults(solutionId)) 1693 1694 def RenumberZone(self, newId: int) -> ZoneIdUpdateStatus: 1695 return ZoneIdUpdateStatus[self._Entity.RenumberZone(newId).ToString()] 1696 1697 def GetAllResults(self) -> AnalysisResultCol: 1698 return AnalysisResultCol(self._Entity.GetAllResults()) 1699 1700 def GetControllingResult(self) -> AnalysisResult: 1701 result = self._Entity.GetControllingResult() 1702 thisClass = type(result).__name__ 1703 givenClass = AnalysisResult 1704 for subclass in AnalysisResult.__subclasses__(): 1705 if subclass.__name__ == thisClass: 1706 givenClass = subclass 1707 return givenClass(result) 1708 1709 def GetMinimumMargin(self) -> Margin: 1710 return Margin(self._Entity.GetMinimumMargin()) 1711 1712 1713class ElementCol(IdEntityCol[Element]): 1714 def __init__(self, elementCol: _api.ElementCol): 1715 self._Entity = elementCol 1716 self._CollectedClass = Element 1717 1718 @property 1719 def ElementColList(self) -> tuple[Element]: 1720 return tuple([Element(elementCol) for elementCol in self._Entity]) 1721 1722 def __getitem__(self, index: int): 1723 return self.ElementColList[index] 1724 1725 def __iter__(self): 1726 yield from self.ElementColList 1727 1728 def __len__(self): 1729 return len(self.ElementColList) 1730 1731 1732class PanelSegment(ZoneBase): 1733 def __init__(self, panelSegment: _api.PanelSegment): 1734 self._Entity = panelSegment 1735 1736 @property 1737 def ElementsByObjectOrSkin(self) -> dict[types.DiscreteDefinitionType, ElementCol]: 1738 elementsByObjectOrSkinDict = {} 1739 for kvp in self._Entity.ElementsByObjectOrSkin: 1740 elementsByObjectOrSkinDict[types.DiscreteDefinitionType[kvp.Key.ToString()]] = ElementCol(kvp.Value) 1741 1742 return elementsByObjectOrSkinDict 1743 1744 @property 1745 def Skins(self) -> tuple[types.DiscreteDefinitionType]: 1746 return tuple([types.DiscreteDefinitionType(discreteDefinitionType) for discreteDefinitionType in self._Entity.Skins]) 1747 1748 @property 1749 def Objects(self) -> tuple[types.DiscreteDefinitionType]: 1750 return tuple([types.DiscreteDefinitionType(discreteDefinitionType) for discreteDefinitionType in self._Entity.Objects]) 1751 1752 @property 1753 def DiscreteTechnique(self) -> types.DiscreteTechnique: 1754 return types.DiscreteTechnique[self._Entity.DiscreteTechnique.ToString()] 1755 1756 @property 1757 def LeftSkinZoneId(self) -> int: 1758 return self._Entity.LeftSkinZoneId 1759 1760 @property 1761 def RightSkinZoneId(self) -> int: 1762 return self._Entity.RightSkinZoneId 1763 1764 def GetElements(self, discreteDefinitionType: types.DiscreteDefinitionType) -> ElementCol: 1765 return ElementCol(self._Entity.GetElements(_types.DiscreteDefinitionType(discreteDefinitionType.value))) 1766 1767 def SetObjectElements(self, discreteDefinitionType: types.DiscreteDefinitionType, elementIds: tuple[int]) -> None: 1768 elementIdsList = MakeCSharpIntList(elementIds) 1769 elementIdsEnumerable = IEnumerable(elementIdsList) 1770 return self._Entity.SetObjectElements(_types.DiscreteDefinitionType(discreteDefinitionType.value), elementIdsEnumerable) 1771 1772 1773class Zone(ZoneBase): 1774 ''' 1775 Abstract for regular Zones (not Panel Segments). 1776 ''' 1777 def __init__(self, zone: _api.Zone): 1778 self._Entity = zone 1779 1780 @property 1781 def Elements(self) -> ElementCol: 1782 result = self._Entity.Elements 1783 return ElementCol(result) if result is not None else None 1784 1785 def AddElements(self, elementIds: tuple[int]) -> None: 1786 elementIdsList = MakeCSharpIntList(elementIds) 1787 elementIdsEnumerable = IEnumerable(elementIdsList) 1788 return self._Entity.AddElements(elementIdsEnumerable) 1789 1790 1791class EntityWithAssignablePropertiesCol(IdNameEntityCol, Generic[T]): 1792 def __init__(self, entityWithAssignablePropertiesCol: _api.EntityWithAssignablePropertiesCol): 1793 self._Entity = entityWithAssignablePropertiesCol 1794 self._CollectedClass = T 1795 1796 @property 1797 def EntityWithAssignablePropertiesColList(self) -> tuple[T]: 1798 if self._Entity.Count() <= 0: 1799 return () 1800 thisClass = type(self._Entity._items[0]).__name__ 1801 givenClass = T 1802 for subclass in T.__subclasses__(): 1803 if subclass.__name__ == thisClass: 1804 givenClass = subclass 1805 return tuple([givenClass(entityWithAssignablePropertiesCol) for entityWithAssignablePropertiesCol in self._Entity]) 1806 1807 def AssignPropertyToAll(self, property: AssignableProperty) -> PropertyAssignmentStatus: 1808 return PropertyAssignmentStatus[self._Entity.AssignPropertyToAll(property._Entity).ToString()] 1809 1810 @overload 1811 def Get(self, name: str) -> T: ... 1812 1813 @overload 1814 def Get(self, id: int) -> T: ... 1815 1816 def Get(self, item1 = None) -> T: 1817 if isinstance(item1, str): 1818 return super().Get(item1) 1819 1820 if isinstance(item1, int): 1821 return super().Get(item1) 1822 1823 return self._Entity.Get(item1) 1824 1825 def __getitem__(self, index: int): 1826 return self.EntityWithAssignablePropertiesColList[index] 1827 1828 def __iter__(self): 1829 yield from self.EntityWithAssignablePropertiesColList 1830 1831 def __len__(self): 1832 return len(self.EntityWithAssignablePropertiesColList) 1833 1834 1835class JointCol(EntityWithAssignablePropertiesCol[Joint]): 1836 def __init__(self, jointCol: _api.JointCol): 1837 self._Entity = jointCol 1838 self._CollectedClass = Joint 1839 1840 @property 1841 def JointColList(self) -> tuple[Joint]: 1842 return tuple([Joint(jointCol) for jointCol in self._Entity]) 1843 1844 @overload 1845 def Get(self, name: str) -> Joint: ... 1846 1847 @overload 1848 def Get(self, id: int) -> Joint: ... 1849 1850 def Get(self, item1 = None) -> Joint: 1851 if isinstance(item1, str): 1852 return Joint(super().Get(item1)) 1853 1854 if isinstance(item1, int): 1855 return Joint(super().Get(item1)) 1856 1857 return Joint(self._Entity.Get(item1)) 1858 1859 def __getitem__(self, index: int): 1860 return self.JointColList[index] 1861 1862 def __iter__(self): 1863 yield from self.JointColList 1864 1865 def __len__(self): 1866 return len(self.JointColList) 1867 1868 1869class PanelSegmentCol(EntityWithAssignablePropertiesCol[PanelSegment]): 1870 def __init__(self, panelSegmentCol: _api.PanelSegmentCol): 1871 self._Entity = panelSegmentCol 1872 self._CollectedClass = PanelSegment 1873 1874 @property 1875 def PanelSegmentColList(self) -> tuple[PanelSegment]: 1876 return tuple([PanelSegment(panelSegmentCol) for panelSegmentCol in self._Entity]) 1877 1878 @overload 1879 def Get(self, name: str) -> PanelSegment: ... 1880 1881 @overload 1882 def Get(self, id: int) -> PanelSegment: ... 1883 1884 def Get(self, item1 = None) -> PanelSegment: 1885 if isinstance(item1, str): 1886 return PanelSegment(super().Get(item1)) 1887 1888 if isinstance(item1, int): 1889 return PanelSegment(super().Get(item1)) 1890 1891 return PanelSegment(self._Entity.Get(item1)) 1892 1893 def __getitem__(self, index: int): 1894 return self.PanelSegmentColList[index] 1895 1896 def __iter__(self): 1897 yield from self.PanelSegmentColList 1898 1899 def __len__(self): 1900 return len(self.PanelSegmentColList) 1901 1902 1903class ZoneCol(EntityWithAssignablePropertiesCol[Zone]): 1904 def __init__(self, zoneCol: _api.ZoneCol): 1905 self._Entity = zoneCol 1906 self._CollectedClass = Zone 1907 1908 @property 1909 def ZoneColList(self) -> tuple[Zone]: 1910 return tuple([Zone(zoneCol) for zoneCol in self._Entity]) 1911 1912 @overload 1913 def Get(self, name: str) -> Zone: ... 1914 1915 @overload 1916 def Get(self, id: int) -> Zone: ... 1917 1918 def Get(self, item1 = None) -> Zone: 1919 if isinstance(item1, str): 1920 return Zone(super().Get(item1)) 1921 1922 if isinstance(item1, int): 1923 return Zone(super().Get(item1)) 1924 1925 result = self._Entity.Get(item1) 1926 thisClass = type(result).__name__ 1927 givenClass = Zone 1928 for subclass in Zone.__subclasses__(): 1929 if subclass.__name__ == thisClass: 1930 givenClass = subclass 1931 return givenClass(result) 1932 1933 def __getitem__(self, index: int): 1934 return self.ZoneColList[index] 1935 1936 def __iter__(self): 1937 yield from self.ZoneColList 1938 1939 def __len__(self): 1940 return len(self.ZoneColList) 1941 1942 1943class ZoneJointContainer(IdNameEntityRenameable): 1944 ''' 1945 Represents an entity that contains a collection of Zones and Joints. 1946 ''' 1947 def __init__(self, zoneJointContainer: _api.ZoneJointContainer): 1948 self._Entity = zoneJointContainer 1949 1950 @property 1951 def Centroid(self) -> Centroid: 1952 result = self._Entity.Centroid 1953 return Centroid(result) if result is not None else None 1954 1955 @property 1956 def Joints(self) -> JointCol: 1957 result = self._Entity.Joints 1958 return JointCol(result) if result is not None else None 1959 1960 @property 1961 def PanelSegments(self) -> PanelSegmentCol: 1962 result = self._Entity.PanelSegments 1963 return PanelSegmentCol(result) if result is not None else None 1964 1965 @property 1966 def TotalBeamLength(self) -> float: 1967 return self._Entity.TotalBeamLength 1968 1969 @property 1970 def TotalPanelArea(self) -> float: 1971 return self._Entity.TotalPanelArea 1972 1973 @property 1974 def TotalZoneWeight(self) -> float: 1975 return self._Entity.TotalZoneWeight 1976 1977 @property 1978 def Zones(self) -> ZoneCol: 1979 result = self._Entity.Zones 1980 return ZoneCol(result) if result is not None else None 1981 1982 @overload 1983 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 1984 1985 @overload 1986 @abstractmethod 1987 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 1988 1989 @overload 1990 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 1991 1992 @overload 1993 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 1994 1995 @overload 1996 @abstractmethod 1997 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 1998 1999 @overload 2000 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 2001 2002 @overload 2003 def AddZone(self, id: int) -> CollectionModificationStatus: ... 2004 2005 @overload 2006 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 2007 2008 @overload 2009 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 2010 2011 @overload 2012 @abstractmethod 2013 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 2014 2015 @overload 2016 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 2017 2018 @overload 2019 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 2020 2021 @overload 2022 @abstractmethod 2023 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 2024 2025 @overload 2026 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 2027 2028 @overload 2029 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 2030 2031 @overload 2032 @abstractmethod 2033 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 2034 2035 @overload 2036 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 2037 2038 @overload 2039 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 2040 2041 @overload 2042 @abstractmethod 2043 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 2044 2045 @overload 2046 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 2047 2048 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 2049 if isinstance(item1, int): 2050 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()] 2051 2052 if isinstance(item1, Joint): 2053 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 2054 2055 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()] 2056 2057 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 2058 if isinstance(item1, int): 2059 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 2060 2061 if isinstance(item1, Joint): 2062 return CollectionModificationStatus[self._Entity.RemoveJoint(item1._Entity).ToString()] 2063 2064 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 2065 2066 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 2067 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2068 jointIdsList = MakeCSharpIntList(item1) 2069 jointIdsEnumerable = IEnumerable(jointIdsList) 2070 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 2071 2072 if isinstance(item1, JointCol): 2073 return CollectionModificationStatus[self._Entity.RemoveJoints(item1._Entity).ToString()] 2074 2075 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()] 2076 2077 def AddZone(self, item1 = None) -> CollectionModificationStatus: 2078 if isinstance(item1, int): 2079 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 2080 2081 if isinstance(item1, Zone): 2082 return CollectionModificationStatus[self._Entity.AddZone(item1._Entity).ToString()] 2083 2084 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 2085 2086 def AddZones(self, item1 = None) -> CollectionModificationStatus: 2087 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2088 idsList = MakeCSharpIntList(item1) 2089 idsEnumerable = IEnumerable(idsList) 2090 return CollectionModificationStatus[self._Entity.AddZones(idsEnumerable).ToString()] 2091 2092 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 2093 zonesList = List[_api.Zone]() 2094 if item1 is not None: 2095 for thing in item1: 2096 if thing is not None: 2097 zonesList.Add(thing._Entity) 2098 zonesEnumerable = IEnumerable(zonesList) 2099 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 2100 2101 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()] 2102 2103 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 2104 if isinstance(item1, int): 2105 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 2106 2107 if isinstance(item1, Zone): 2108 return CollectionModificationStatus[self._Entity.RemoveZone(item1._Entity).ToString()] 2109 2110 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 2111 2112 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 2113 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2114 zoneIdsList = MakeCSharpIntList(item1) 2115 zoneIdsEnumerable = IEnumerable(zoneIdsList) 2116 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 2117 2118 if isinstance(item1, ZoneCol): 2119 return CollectionModificationStatus[self._Entity.RemoveZones(item1._Entity).ToString()] 2120 2121 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()] 2122 2123 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 2124 if isinstance(item1, int): 2125 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()] 2126 2127 if isinstance(item1, PanelSegment): 2128 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 2129 2130 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()] 2131 2132 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 2133 if isinstance(item1, int): 2134 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 2135 2136 if isinstance(item1, PanelSegment): 2137 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1._Entity).ToString()] 2138 2139 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 2140 2141 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 2142 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2143 segmentIdsList = MakeCSharpIntList(item1) 2144 segmentIdsEnumerable = IEnumerable(segmentIdsList) 2145 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 2146 2147 if isinstance(item1, PanelSegmentCol): 2148 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1._Entity).ToString()] 2149 2150 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()] 2151 2152 2153class AutomatedConstraint(IdNameEntityRenameable): 2154 def __init__(self, automatedConstraint: _api.AutomatedConstraint): 2155 self._Entity = automatedConstraint 2156 2157 @property 2158 def ConstraintType(self) -> types.StiffnessCriteriaType: 2159 return types.StiffnessCriteriaType[self._Entity.ConstraintType.ToString()] 2160 2161 @property 2162 def Set(self) -> str: 2163 return self._Entity.Set 2164 2165 @property 2166 def DesignLoadCases(self) -> list[str]: 2167 return [string for string in self._Entity.DesignLoadCases] 2168 2169 @Set.setter 2170 def Set(self, value: str) -> None: 2171 self._Entity.Set = value 2172 2173 def AddDesignLoadCases(self, designLoadCases: list[str]) -> None: 2174 designLoadCasesList = List[str]() 2175 if designLoadCases is not None: 2176 for thing in designLoadCases: 2177 if thing is not None: 2178 designLoadCasesList.Add(thing) 2179 return self._Entity.AddDesignLoadCases(designLoadCasesList) 2180 2181 def RemoveDesignLoadCases(self, designLoadCases: list[str]) -> None: 2182 designLoadCasesList = List[str]() 2183 if designLoadCases is not None: 2184 for thing in designLoadCases: 2185 if thing is not None: 2186 designLoadCasesList.Add(thing) 2187 return self._Entity.RemoveDesignLoadCases(designLoadCasesList) 2188 2189 2190class ModalAutomatedConstraint(AutomatedConstraint): 2191 def __init__(self, modalAutomatedConstraint: _api.ModalAutomatedConstraint): 2192 self._Entity = modalAutomatedConstraint 2193 2194 @property 2195 def Eigenvalue(self) -> float: 2196 return self._Entity.Eigenvalue 2197 2198 @Eigenvalue.setter 2199 def Eigenvalue(self, value: float) -> None: 2200 self._Entity.Eigenvalue = value 2201 2202 2203class BucklingAutomatedConstraint(ModalAutomatedConstraint): 2204 def __init__(self, bucklingAutomatedConstraint: _api.BucklingAutomatedConstraint): 2205 self._Entity = bucklingAutomatedConstraint 2206 2207 2208class StaticAutomatedConstraint(AutomatedConstraint): 2209 def __init__(self, staticAutomatedConstraint: _api.StaticAutomatedConstraint): 2210 self._Entity = staticAutomatedConstraint 2211 2212 @property 2213 def VirtualDesignLoad(self) -> str: 2214 return self._Entity.VirtualDesignLoad 2215 2216 @property 2217 def GridId(self) -> int: 2218 return self._Entity.GridId 2219 2220 @property 2221 def Orientation(self) -> types.DisplacementShapeType: 2222 return types.DisplacementShapeType[self._Entity.Orientation.ToString()] 2223 2224 @property 2225 def HasVector(self) -> bool: 2226 return self._Entity.HasVector 2227 2228 @property 2229 def X(self) -> float: 2230 return self._Entity.X 2231 2232 @property 2233 def Y(self) -> float: 2234 return self._Entity.Y 2235 2236 @property 2237 def Z(self) -> float: 2238 return self._Entity.Z 2239 2240 @VirtualDesignLoad.setter 2241 def VirtualDesignLoad(self, value: str) -> None: 2242 self._Entity.VirtualDesignLoad = value 2243 2244 @GridId.setter 2245 def GridId(self, value: int) -> None: 2246 self._Entity.GridId = value 2247 2248 @Orientation.setter 2249 def Orientation(self, value: types.DisplacementShapeType) -> None: 2250 self._Entity.Orientation = _types.DisplacementShapeType(value.value) 2251 2252 @X.setter 2253 def X(self, value: float) -> None: 2254 self._Entity.X = value 2255 2256 @Y.setter 2257 def Y(self, value: float) -> None: 2258 self._Entity.Y = value 2259 2260 @Z.setter 2261 def Z(self, value: float) -> None: 2262 self._Entity.Z = value 2263 2264 2265class DisplacementAutomatedConstraint(StaticAutomatedConstraint): 2266 def __init__(self, displacementAutomatedConstraint: _api.DisplacementAutomatedConstraint): 2267 self._Entity = displacementAutomatedConstraint 2268 2269 @property 2270 def Limit(self) -> float: 2271 return self._Entity.Limit 2272 2273 @Limit.setter 2274 def Limit(self, value: float) -> None: 2275 self._Entity.Limit = value 2276 2277 2278class FrequencyAutomatedConstraint(ModalAutomatedConstraint): 2279 def __init__(self, frequencyAutomatedConstraint: _api.FrequencyAutomatedConstraint): 2280 self._Entity = frequencyAutomatedConstraint 2281 2282 2283class RotationAutomatedConstraint(StaticAutomatedConstraint): 2284 def __init__(self, rotationAutomatedConstraint: _api.RotationAutomatedConstraint): 2285 self._Entity = rotationAutomatedConstraint 2286 2287 @property 2288 def Limit(self) -> float: 2289 return self._Entity.Limit 2290 2291 @Limit.setter 2292 def Limit(self, value: float) -> None: 2293 self._Entity.Limit = value 2294 2295 2296class ManualConstraint(IdNameEntityRenameable): 2297 def __init__(self, manualConstraint: _api.ManualConstraint): 2298 self._Entity = manualConstraint 2299 2300 @property 2301 def ConstraintType(self) -> types.ConstraintType: 2302 return types.ConstraintType[self._Entity.ConstraintType.ToString()] 2303 2304 @property 2305 def Set(self) -> str: 2306 return self._Entity.Set 2307 2308 @property 2309 def Limit(self) -> float: 2310 return self._Entity.Limit 2311 2312 @property 2313 def A11(self) -> bool: 2314 return self._Entity.A11 2315 2316 @property 2317 def A22(self) -> bool: 2318 return self._Entity.A22 2319 2320 @property 2321 def A33(self) -> bool: 2322 return self._Entity.A33 2323 2324 @property 2325 def D11(self) -> bool: 2326 return self._Entity.D11 2327 2328 @property 2329 def D22(self) -> bool: 2330 return self._Entity.D22 2331 2332 @property 2333 def D33(self) -> bool: 2334 return self._Entity.D33 2335 2336 @property 2337 def EA(self) -> bool: 2338 return self._Entity.EA 2339 2340 @property 2341 def EI1(self) -> bool: 2342 return self._Entity.EI1 2343 2344 @property 2345 def EI2(self) -> bool: 2346 return self._Entity.EI2 2347 2348 @property 2349 def GJ(self) -> bool: 2350 return self._Entity.GJ 2351 2352 @property 2353 def IsActive(self) -> bool: 2354 return self._Entity.IsActive 2355 2356 @Set.setter 2357 def Set(self, value: str) -> None: 2358 self._Entity.Set = value 2359 2360 @Limit.setter 2361 def Limit(self, value: float) -> None: 2362 self._Entity.Limit = value 2363 2364 @A11.setter 2365 def A11(self, value: bool) -> None: 2366 self._Entity.A11 = value 2367 2368 @A22.setter 2369 def A22(self, value: bool) -> None: 2370 self._Entity.A22 = value 2371 2372 @A33.setter 2373 def A33(self, value: bool) -> None: 2374 self._Entity.A33 = value 2375 2376 @D11.setter 2377 def D11(self, value: bool) -> None: 2378 self._Entity.D11 = value 2379 2380 @D22.setter 2381 def D22(self, value: bool) -> None: 2382 self._Entity.D22 = value 2383 2384 @D33.setter 2385 def D33(self, value: bool) -> None: 2386 self._Entity.D33 = value 2387 2388 @EA.setter 2389 def EA(self, value: bool) -> None: 2390 self._Entity.EA = value 2391 2392 @EI1.setter 2393 def EI1(self, value: bool) -> None: 2394 self._Entity.EI1 = value 2395 2396 @EI2.setter 2397 def EI2(self, value: bool) -> None: 2398 self._Entity.EI2 = value 2399 2400 @GJ.setter 2401 def GJ(self, value: bool) -> None: 2402 self._Entity.GJ = value 2403 2404 @IsActive.setter 2405 def IsActive(self, value: bool) -> None: 2406 self._Entity.IsActive = value 2407 2408 2409class ManualConstraintWithDesignLoad(ManualConstraint): 2410 def __init__(self, manualConstraintWithDesignLoad: _api.ManualConstraintWithDesignLoad): 2411 self._Entity = manualConstraintWithDesignLoad 2412 2413 @property 2414 def UseAllDesignLoads(self) -> bool: 2415 return self._Entity.UseAllDesignLoads 2416 2417 @property 2418 def DesignLoadCase(self) -> str: 2419 return self._Entity.DesignLoadCase 2420 2421 @UseAllDesignLoads.setter 2422 def UseAllDesignLoads(self, value: bool) -> None: 2423 self._Entity.UseAllDesignLoads = value 2424 2425 @DesignLoadCase.setter 2426 def DesignLoadCase(self, value: str) -> None: 2427 self._Entity.DesignLoadCase = value 2428 2429 2430class BucklingManualConstraint(ManualConstraintWithDesignLoad): 2431 def __init__(self, bucklingManualConstraint: _api.BucklingManualConstraint): 2432 self._Entity = bucklingManualConstraint 2433 2434 2435class DisplacementManualConstraint(ManualConstraintWithDesignLoad): 2436 def __init__(self, displacementManualConstraint: _api.DisplacementManualConstraint): 2437 self._Entity = displacementManualConstraint 2438 2439 @property 2440 def DOF(self) -> types.DegreeOfFreedom: 2441 return types.DegreeOfFreedom[self._Entity.DOF.ToString()] 2442 2443 @property 2444 def Nodes(self) -> list[int]: 2445 return [int32 for int32 in self._Entity.Nodes] 2446 2447 @property 2448 def RefNodes(self) -> list[int]: 2449 return [int32 for int32 in self._Entity.RefNodes] 2450 2451 @DOF.setter 2452 def DOF(self, value: types.DegreeOfFreedom) -> None: 2453 self._Entity.DOF = _types.DegreeOfFreedom(value.value) 2454 2455 def AddNodes(self, ids: list[int]) -> None: 2456 idsList = MakeCSharpIntList(ids) 2457 return self._Entity.AddNodes(idsList) 2458 2459 def RemoveNodes(self, ids: list[int]) -> None: 2460 idsList = MakeCSharpIntList(ids) 2461 return self._Entity.RemoveNodes(idsList) 2462 2463 def AddRefNodes(self, ids: list[int]) -> None: 2464 idsList = MakeCSharpIntList(ids) 2465 return self._Entity.AddRefNodes(idsList) 2466 2467 def RemoveRefNodes(self, ids: list[int]) -> None: 2468 idsList = MakeCSharpIntList(ids) 2469 return self._Entity.RemoveRefNodes(idsList) 2470 2471 2472class FrequencyManualConstraint(ManualConstraintWithDesignLoad): 2473 def __init__(self, frequencyManualConstraint: _api.FrequencyManualConstraint): 2474 self._Entity = frequencyManualConstraint 2475 2476 2477class StaticMomentManualConstraint(ManualConstraint): 2478 def __init__(self, staticMomentManualConstraint: _api.StaticMomentManualConstraint): 2479 self._Entity = staticMomentManualConstraint 2480 2481 2482class AutomatedConstraintCol(IdNameEntityCol[AutomatedConstraint]): 2483 def __init__(self, automatedConstraintCol: _api.AutomatedConstraintCol): 2484 self._Entity = automatedConstraintCol 2485 self._CollectedClass = AutomatedConstraint 2486 2487 @property 2488 def AutomatedConstraintColList(self) -> tuple[AutomatedConstraint]: 2489 return tuple([AutomatedConstraint(automatedConstraintCol) for automatedConstraintCol in self._Entity]) 2490 2491 def AddBucklingConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> BucklingAutomatedConstraint: 2492 designLoadsList = List[str]() 2493 if designLoads is not None: 2494 for thing in designLoads: 2495 if thing is not None: 2496 designLoadsList.Add(thing) 2497 return BucklingAutomatedConstraint(self._Entity.AddBucklingConstraint(designLoadsList, eigenvalue, name)) 2498 2499 def AddFrequencyConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> FrequencyAutomatedConstraint: 2500 designLoadsList = List[str]() 2501 if designLoads is not None: 2502 for thing in designLoads: 2503 if thing is not None: 2504 designLoadsList.Add(thing) 2505 return FrequencyAutomatedConstraint(self._Entity.AddFrequencyConstraint(designLoadsList, eigenvalue, name)) 2506 2507 def AddDisplacementConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> DisplacementAutomatedConstraint: 2508 designLoadsList = List[str]() 2509 if designLoads is not None: 2510 for thing in designLoads: 2511 if thing is not None: 2512 designLoadsList.Add(thing) 2513 return DisplacementAutomatedConstraint(self._Entity.AddDisplacementConstraint(designLoadsList, gridId, limit, name)) 2514 2515 def AddRotationConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> RotationAutomatedConstraint: 2516 designLoadsList = List[str]() 2517 if designLoads is not None: 2518 for thing in designLoads: 2519 if thing is not None: 2520 designLoadsList.Add(thing) 2521 return RotationAutomatedConstraint(self._Entity.AddRotationConstraint(designLoadsList, gridId, limit, name)) 2522 2523 @overload 2524 def Delete(self, id: int) -> bool: ... 2525 2526 @overload 2527 def Delete(self, name: str) -> bool: ... 2528 2529 @overload 2530 def GetBuckling(self, id: int) -> BucklingAutomatedConstraint: ... 2531 2532 @overload 2533 def GetBuckling(self, name: str) -> BucklingAutomatedConstraint: ... 2534 2535 @overload 2536 def GetFrequency(self, id: int) -> FrequencyAutomatedConstraint: ... 2537 2538 @overload 2539 def GetFrequency(self, name: str) -> FrequencyAutomatedConstraint: ... 2540 2541 @overload 2542 def GetRotation(self, id: int) -> RotationAutomatedConstraint: ... 2543 2544 @overload 2545 def GetRotation(self, name: str) -> RotationAutomatedConstraint: ... 2546 2547 @overload 2548 def GetDisplacement(self, id: int) -> DisplacementAutomatedConstraint: ... 2549 2550 @overload 2551 def GetDisplacement(self, name: str) -> DisplacementAutomatedConstraint: ... 2552 2553 @overload 2554 def Get(self, name: str) -> AutomatedConstraint: ... 2555 2556 @overload 2557 def Get(self, id: int) -> AutomatedConstraint: ... 2558 2559 def Delete(self, item1 = None) -> bool: 2560 if isinstance(item1, int): 2561 return self._Entity.Delete(item1) 2562 2563 if isinstance(item1, str): 2564 return self._Entity.Delete(item1) 2565 2566 return self._Entity.Delete(item1) 2567 2568 def GetBuckling(self, item1 = None) -> BucklingAutomatedConstraint: 2569 if isinstance(item1, int): 2570 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2571 2572 if isinstance(item1, str): 2573 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2574 2575 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2576 2577 def GetFrequency(self, item1 = None) -> FrequencyAutomatedConstraint: 2578 if isinstance(item1, int): 2579 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2580 2581 if isinstance(item1, str): 2582 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2583 2584 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2585 2586 def GetRotation(self, item1 = None) -> RotationAutomatedConstraint: 2587 if isinstance(item1, int): 2588 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2589 2590 if isinstance(item1, str): 2591 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2592 2593 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2594 2595 def GetDisplacement(self, item1 = None) -> DisplacementAutomatedConstraint: 2596 if isinstance(item1, int): 2597 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2598 2599 if isinstance(item1, str): 2600 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2601 2602 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2603 2604 def Get(self, item1 = None) -> AutomatedConstraint: 2605 if isinstance(item1, str): 2606 return AutomatedConstraint(super().Get(item1)) 2607 2608 if isinstance(item1, int): 2609 return AutomatedConstraint(super().Get(item1)) 2610 2611 result = self._Entity.Get(item1) 2612 thisClass = type(result).__name__ 2613 givenClass = AutomatedConstraint 2614 for subclass in AutomatedConstraint.__subclasses__(): 2615 if subclass.__name__ == thisClass: 2616 givenClass = subclass 2617 return givenClass(result) 2618 2619 def __getitem__(self, index: int): 2620 return self.AutomatedConstraintColList[index] 2621 2622 def __iter__(self): 2623 yield from self.AutomatedConstraintColList 2624 2625 def __len__(self): 2626 return len(self.AutomatedConstraintColList) 2627 2628 2629class ManualConstraintCol(IdNameEntityCol[ManualConstraint]): 2630 def __init__(self, manualConstraintCol: _api.ManualConstraintCol): 2631 self._Entity = manualConstraintCol 2632 self._CollectedClass = ManualConstraint 2633 2634 @property 2635 def ManualConstraintColList(self) -> tuple[ManualConstraint]: 2636 return tuple([ManualConstraint(manualConstraintCol) for manualConstraintCol in self._Entity]) 2637 2638 @overload 2639 def GetFrequency(self, id: int) -> FrequencyManualConstraint: ... 2640 2641 @overload 2642 def GetFrequency(self, name: str) -> FrequencyManualConstraint: ... 2643 2644 @overload 2645 def GetBuckling(self, id: int) -> BucklingManualConstraint: ... 2646 2647 @overload 2648 def GetBuckling(self, name: str) -> BucklingManualConstraint: ... 2649 2650 @overload 2651 def GetDisplacement(self, id: int) -> DisplacementManualConstraint: ... 2652 2653 @overload 2654 def GetDisplacement(self, name: str) -> DisplacementManualConstraint: ... 2655 2656 @overload 2657 def GetStaticMoment(self, id: int) -> StaticMomentManualConstraint: ... 2658 2659 @overload 2660 def GetStaticMoment(self, name: str) -> StaticMomentManualConstraint: ... 2661 2662 def AddFrequencyConstraint(self, setName: str, limit: float, name: str = None) -> FrequencyManualConstraint: 2663 return FrequencyManualConstraint(self._Entity.AddFrequencyConstraint(setName, limit, name)) 2664 2665 def AddBucklingConstraint(self, setName: str, limit: float, name: str = None) -> BucklingManualConstraint: 2666 return BucklingManualConstraint(self._Entity.AddBucklingConstraint(setName, limit, name)) 2667 2668 def AddStaticMomentManualConstraint(self, setName: str, limit: float, name: str = None) -> StaticMomentManualConstraint: 2669 return StaticMomentManualConstraint(self._Entity.AddStaticMomentManualConstraint(setName, limit, name)) 2670 2671 def AddDisplacementConstraint(self, setName: str, gridIds: list[int], limit: float, name: str = None) -> DisplacementManualConstraint: 2672 gridIdsList = MakeCSharpIntList(gridIds) 2673 return DisplacementManualConstraint(self._Entity.AddDisplacementConstraint(setName, gridIdsList, limit, name)) 2674 2675 @overload 2676 def DeleteConstraint(self, name: str) -> bool: ... 2677 2678 @overload 2679 def DeleteConstraint(self, id: int) -> bool: ... 2680 2681 @overload 2682 def Get(self, name: str) -> ManualConstraint: ... 2683 2684 @overload 2685 def Get(self, id: int) -> ManualConstraint: ... 2686 2687 def GetFrequency(self, item1 = None) -> FrequencyManualConstraint: 2688 if isinstance(item1, int): 2689 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2690 2691 if isinstance(item1, str): 2692 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2693 2694 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2695 2696 def GetBuckling(self, item1 = None) -> BucklingManualConstraint: 2697 if isinstance(item1, int): 2698 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2699 2700 if isinstance(item1, str): 2701 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2702 2703 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2704 2705 def GetDisplacement(self, item1 = None) -> DisplacementManualConstraint: 2706 if isinstance(item1, int): 2707 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2708 2709 if isinstance(item1, str): 2710 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2711 2712 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2713 2714 def GetStaticMoment(self, item1 = None) -> StaticMomentManualConstraint: 2715 if isinstance(item1, int): 2716 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2717 2718 if isinstance(item1, str): 2719 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2720 2721 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2722 2723 def DeleteConstraint(self, item1 = None) -> bool: 2724 if isinstance(item1, str): 2725 return self._Entity.DeleteConstraint(item1) 2726 2727 if isinstance(item1, int): 2728 return self._Entity.DeleteConstraint(item1) 2729 2730 return self._Entity.DeleteConstraint(item1) 2731 2732 def Get(self, item1 = None) -> ManualConstraint: 2733 if isinstance(item1, str): 2734 return ManualConstraint(super().Get(item1)) 2735 2736 if isinstance(item1, int): 2737 return ManualConstraint(super().Get(item1)) 2738 2739 return ManualConstraint(self._Entity.Get(item1)) 2740 2741 def __getitem__(self, index: int): 2742 return self.ManualConstraintColList[index] 2743 2744 def __iter__(self): 2745 yield from self.ManualConstraintColList 2746 2747 def __len__(self): 2748 return len(self.ManualConstraintColList) 2749 2750 2751class HyperFea: 2752 def __init__(self, hyperFea: _api.HyperFea): 2753 self._Entity = hyperFea 2754 2755 @property 2756 def ManualConstraints(self) -> ManualConstraintCol: 2757 result = self._Entity.ManualConstraints 2758 return ManualConstraintCol(result) if result is not None else None 2759 2760 @property 2761 def AutomatedConstraints(self) -> AutomatedConstraintCol: 2762 result = self._Entity.AutomatedConstraints 2763 return AutomatedConstraintCol(result) if result is not None else None 2764 2765 def RunIterations(self, numberOfIterations: int, startWithSizing: bool) -> None: 2766 return self._Entity.RunIterations(numberOfIterations, startWithSizing) 2767 2768 def SetupSolver(self, solverPath: str, arguments: str) -> types.SimpleStatus: 2769 return types.SimpleStatus(self._Entity.SetupSolver(solverPath, arguments)) 2770 2771 def TestSolver(self) -> types.SimpleStatus: 2772 ''' 2773 Test FEA solver setup. 2774 ''' 2775 return types.SimpleStatus(self._Entity.TestSolver()) 2776 2777 def GetSolverSetup(self) -> types.HyperFeaSolver: 2778 ''' 2779 Get the current FEA solver setup. 2780 ''' 2781 return types.HyperFeaSolver(self._Entity.GetSolverSetup()) 2782 2783 2784class FoamTemperature: 2785 ''' 2786 Foam material temperature dependent properties. 2787 ''' 2788 def __init__(self, foamTemperature: _api.FoamTemperature): 2789 self._Entity = foamTemperature 2790 2791 @property 2792 def Temperature(self) -> float: 2793 return self._Entity.Temperature 2794 2795 @property 2796 def Et(self) -> float: 2797 return self._Entity.Et 2798 2799 @property 2800 def Ec(self) -> float: 2801 return self._Entity.Ec 2802 2803 @property 2804 def G(self) -> float: 2805 return self._Entity.G 2806 2807 @property 2808 def Ef(self) -> float: 2809 return self._Entity.Ef 2810 2811 @property 2812 def Ftu(self) -> float: 2813 return self._Entity.Ftu 2814 2815 @property 2816 def Fcu(self) -> float: 2817 return self._Entity.Fcu 2818 2819 @property 2820 def Fsu(self) -> float: 2821 return self._Entity.Fsu 2822 2823 @property 2824 def Ffu(self) -> float: 2825 return self._Entity.Ffu 2826 2827 @property 2828 def K(self) -> float: 2829 return self._Entity.K 2830 2831 @property 2832 def C(self) -> float: 2833 return self._Entity.C 2834 2835 @Temperature.setter 2836 def Temperature(self, value: float) -> None: 2837 self._Entity.Temperature = value 2838 2839 @Et.setter 2840 def Et(self, value: float) -> None: 2841 self._Entity.Et = value 2842 2843 @Ec.setter 2844 def Ec(self, value: float) -> None: 2845 self._Entity.Ec = value 2846 2847 @G.setter 2848 def G(self, value: float) -> None: 2849 self._Entity.G = value 2850 2851 @Ef.setter 2852 def Ef(self, value: float) -> None: 2853 self._Entity.Ef = value 2854 2855 @Ftu.setter 2856 def Ftu(self, value: float) -> None: 2857 self._Entity.Ftu = value 2858 2859 @Fcu.setter 2860 def Fcu(self, value: float) -> None: 2861 self._Entity.Fcu = value 2862 2863 @Fsu.setter 2864 def Fsu(self, value: float) -> None: 2865 self._Entity.Fsu = value 2866 2867 @Ffu.setter 2868 def Ffu(self, value: float) -> None: 2869 self._Entity.Ffu = value 2870 2871 @K.setter 2872 def K(self, value: float) -> None: 2873 self._Entity.K = value 2874 2875 @C.setter 2876 def C(self, value: float) -> None: 2877 self._Entity.C = value 2878 2879 2880class Foam: 2881 ''' 2882 Foam material. 2883 ''' 2884 def __init__(self, foam: _api.Foam): 2885 self._Entity = foam 2886 2887 @property 2888 def MaterialFamilyName(self) -> str: 2889 return self._Entity.MaterialFamilyName 2890 2891 @property 2892 def Id(self) -> int: 2893 return self._Entity.Id 2894 2895 @property 2896 def CreationDate(self) -> DateTime: 2897 return self._Entity.CreationDate 2898 2899 @property 2900 def ModificationDate(self) -> DateTime: 2901 return self._Entity.ModificationDate 2902 2903 @property 2904 def Name(self) -> str: 2905 return self._Entity.Name 2906 2907 @property 2908 def Wet(self) -> bool: 2909 return self._Entity.Wet 2910 2911 @property 2912 def Density(self) -> float: 2913 return self._Entity.Density 2914 2915 @property 2916 def Form(self) -> str: 2917 return self._Entity.Form 2918 2919 @property 2920 def Specification(self) -> str: 2921 return self._Entity.Specification 2922 2923 @property 2924 def MaterialDescription(self) -> str: 2925 return self._Entity.MaterialDescription 2926 2927 @property 2928 def UserNote(self) -> str: 2929 return self._Entity.UserNote 2930 2931 @property 2932 def FemMaterialId(self) -> int: 2933 return self._Entity.FemMaterialId 2934 2935 @property 2936 def Cost(self) -> float: 2937 return self._Entity.Cost 2938 2939 @property 2940 def BucklingStiffnessKnockdown(self) -> float: 2941 return self._Entity.BucklingStiffnessKnockdown 2942 2943 @property 2944 def Absorption(self) -> float: 2945 return self._Entity.Absorption 2946 2947 @property 2948 def Manufacturer(self) -> str: 2949 return self._Entity.Manufacturer 2950 2951 @property 2952 def FoamTemperatureProperties(self) -> list[FoamTemperature]: 2953 return [FoamTemperature(foamTemperature) for foamTemperature in self._Entity.FoamTemperatureProperties] 2954 2955 @MaterialFamilyName.setter 2956 def MaterialFamilyName(self, value: str) -> None: 2957 self._Entity.MaterialFamilyName = value 2958 2959 @Name.setter 2960 def Name(self, value: str) -> None: 2961 self._Entity.Name = value 2962 2963 @Wet.setter 2964 def Wet(self, value: bool) -> None: 2965 self._Entity.Wet = value 2966 2967 @Density.setter 2968 def Density(self, value: float) -> None: 2969 self._Entity.Density = value 2970 2971 @Form.setter 2972 def Form(self, value: str) -> None: 2973 self._Entity.Form = value 2974 2975 @Specification.setter 2976 def Specification(self, value: str) -> None: 2977 self._Entity.Specification = value 2978 2979 @MaterialDescription.setter 2980 def MaterialDescription(self, value: str) -> None: 2981 self._Entity.MaterialDescription = value 2982 2983 @UserNote.setter 2984 def UserNote(self, value: str) -> None: 2985 self._Entity.UserNote = value 2986 2987 @FemMaterialId.setter 2988 def FemMaterialId(self, value: int) -> None: 2989 self._Entity.FemMaterialId = value 2990 2991 @Cost.setter 2992 def Cost(self, value: float) -> None: 2993 self._Entity.Cost = value 2994 2995 @BucklingStiffnessKnockdown.setter 2996 def BucklingStiffnessKnockdown(self, value: float) -> None: 2997 self._Entity.BucklingStiffnessKnockdown = value 2998 2999 @Absorption.setter 3000 def Absorption(self, value: float) -> None: 3001 self._Entity.Absorption = value 3002 3003 @Manufacturer.setter 3004 def Manufacturer(self, value: str) -> None: 3005 self._Entity.Manufacturer = value 3006 3007 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftu: float, fcu: float, fsu: float, ef: float = None, ffu: float = None, k: float = None, c: float = None) -> FoamTemperature: 3008 return FoamTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftu, fcu, fsu, ef, ffu, k, c)) 3009 3010 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3011 return self._Entity.DeleteTemperatureProperty(temperature) 3012 3013 def GetTemperature(self, lookupTemperature: float) -> FoamTemperature: 3014 return FoamTemperature(self._Entity.GetTemperature(lookupTemperature)) 3015 3016 def Save(self) -> None: 3017 ''' 3018 Save any changes to this foam material to the database. 3019 ''' 3020 return self._Entity.Save() 3021 3022 3023class HoneycombTemperature: 3024 ''' 3025 Honeycomb material temperature dependent properties. 3026 ''' 3027 def __init__(self, honeycombTemperature: _api.HoneycombTemperature): 3028 self._Entity = honeycombTemperature 3029 3030 @property 3031 def Temperature(self) -> float: 3032 return self._Entity.Temperature 3033 3034 @property 3035 def Et(self) -> float: 3036 return self._Entity.Et 3037 3038 @property 3039 def Ec(self) -> float: 3040 return self._Entity.Ec 3041 3042 @property 3043 def Gw(self) -> float: 3044 return self._Entity.Gw 3045 3046 @property 3047 def Gl(self) -> float: 3048 return self._Entity.Gl 3049 3050 @property 3051 def Ftu(self) -> float: 3052 return self._Entity.Ftu 3053 3054 @property 3055 def Fcus(self) -> float: 3056 return self._Entity.Fcus 3057 3058 @property 3059 def Fcub(self) -> float: 3060 return self._Entity.Fcub 3061 3062 @property 3063 def Fcuc(self) -> float: 3064 return self._Entity.Fcuc 3065 3066 @property 3067 def Fsuw(self) -> float: 3068 return self._Entity.Fsuw 3069 3070 @property 3071 def Fsul(self) -> float: 3072 return self._Entity.Fsul 3073 3074 @property 3075 def SScfl(self) -> float: 3076 return self._Entity.SScfl 3077 3078 @property 3079 def SScfh(self) -> float: 3080 return self._Entity.SScfh 3081 3082 @property 3083 def Kl(self) -> float: 3084 return self._Entity.Kl 3085 3086 @property 3087 def Kw(self) -> float: 3088 return self._Entity.Kw 3089 3090 @property 3091 def Kt(self) -> float: 3092 return self._Entity.Kt 3093 3094 @property 3095 def C(self) -> float: 3096 return self._Entity.C 3097 3098 @Temperature.setter 3099 def Temperature(self, value: float) -> None: 3100 self._Entity.Temperature = value 3101 3102 @Et.setter 3103 def Et(self, value: float) -> None: 3104 self._Entity.Et = value 3105 3106 @Ec.setter 3107 def Ec(self, value: float) -> None: 3108 self._Entity.Ec = value 3109 3110 @Gw.setter 3111 def Gw(self, value: float) -> None: 3112 self._Entity.Gw = value 3113 3114 @Gl.setter 3115 def Gl(self, value: float) -> None: 3116 self._Entity.Gl = value 3117 3118 @Ftu.setter 3119 def Ftu(self, value: float) -> None: 3120 self._Entity.Ftu = value 3121 3122 @Fcus.setter 3123 def Fcus(self, value: float) -> None: 3124 self._Entity.Fcus = value 3125 3126 @Fcub.setter 3127 def Fcub(self, value: float) -> None: 3128 self._Entity.Fcub = value 3129 3130 @Fcuc.setter 3131 def Fcuc(self, value: float) -> None: 3132 self._Entity.Fcuc = value 3133 3134 @Fsuw.setter 3135 def Fsuw(self, value: float) -> None: 3136 self._Entity.Fsuw = value 3137 3138 @Fsul.setter 3139 def Fsul(self, value: float) -> None: 3140 self._Entity.Fsul = value 3141 3142 @SScfl.setter 3143 def SScfl(self, value: float) -> None: 3144 self._Entity.SScfl = value 3145 3146 @SScfh.setter 3147 def SScfh(self, value: float) -> None: 3148 self._Entity.SScfh = value 3149 3150 @Kl.setter 3151 def Kl(self, value: float) -> None: 3152 self._Entity.Kl = value 3153 3154 @Kw.setter 3155 def Kw(self, value: float) -> None: 3156 self._Entity.Kw = value 3157 3158 @Kt.setter 3159 def Kt(self, value: float) -> None: 3160 self._Entity.Kt = value 3161 3162 @C.setter 3163 def C(self, value: float) -> None: 3164 self._Entity.C = value 3165 3166 3167class Honeycomb: 3168 ''' 3169 Honeycomb material. 3170 ''' 3171 def __init__(self, honeycomb: _api.Honeycomb): 3172 self._Entity = honeycomb 3173 3174 @property 3175 def MaterialFamilyName(self) -> str: 3176 return self._Entity.MaterialFamilyName 3177 3178 @property 3179 def Id(self) -> int: 3180 return self._Entity.Id 3181 3182 @property 3183 def CreationDate(self) -> DateTime: 3184 return self._Entity.CreationDate 3185 3186 @property 3187 def ModificationDate(self) -> DateTime: 3188 return self._Entity.ModificationDate 3189 3190 @property 3191 def Name(self) -> str: 3192 return self._Entity.Name 3193 3194 @property 3195 def Wet(self) -> bool: 3196 return self._Entity.Wet 3197 3198 @property 3199 def Density(self) -> float: 3200 return self._Entity.Density 3201 3202 @property 3203 def Form(self) -> str: 3204 return self._Entity.Form 3205 3206 @property 3207 def Specification(self) -> str: 3208 return self._Entity.Specification 3209 3210 @property 3211 def MaterialDescription(self) -> str: 3212 return self._Entity.MaterialDescription 3213 3214 @property 3215 def UserNote(self) -> str: 3216 return self._Entity.UserNote 3217 3218 @property 3219 def FemMaterialId(self) -> int: 3220 return self._Entity.FemMaterialId 3221 3222 @property 3223 def Cost(self) -> float: 3224 return self._Entity.Cost 3225 3226 @property 3227 def CellSize(self) -> float: 3228 return self._Entity.CellSize 3229 3230 @property 3231 def Manufacturer(self) -> str: 3232 return self._Entity.Manufacturer 3233 3234 @property 3235 def HoneycombTemperatureProperties(self) -> list[HoneycombTemperature]: 3236 return [HoneycombTemperature(honeycombTemperature) for honeycombTemperature in self._Entity.HoneycombTemperatureProperties] 3237 3238 @MaterialFamilyName.setter 3239 def MaterialFamilyName(self, value: str) -> None: 3240 self._Entity.MaterialFamilyName = value 3241 3242 @Name.setter 3243 def Name(self, value: str) -> None: 3244 self._Entity.Name = value 3245 3246 @Wet.setter 3247 def Wet(self, value: bool) -> None: 3248 self._Entity.Wet = value 3249 3250 @Density.setter 3251 def Density(self, value: float) -> None: 3252 self._Entity.Density = value 3253 3254 @Form.setter 3255 def Form(self, value: str) -> None: 3256 self._Entity.Form = value 3257 3258 @Specification.setter 3259 def Specification(self, value: str) -> None: 3260 self._Entity.Specification = value 3261 3262 @MaterialDescription.setter 3263 def MaterialDescription(self, value: str) -> None: 3264 self._Entity.MaterialDescription = value 3265 3266 @UserNote.setter 3267 def UserNote(self, value: str) -> None: 3268 self._Entity.UserNote = value 3269 3270 @FemMaterialId.setter 3271 def FemMaterialId(self, value: int) -> None: 3272 self._Entity.FemMaterialId = value 3273 3274 @Cost.setter 3275 def Cost(self, value: float) -> None: 3276 self._Entity.Cost = value 3277 3278 @CellSize.setter 3279 def CellSize(self, value: float) -> None: 3280 self._Entity.CellSize = value 3281 3282 @Manufacturer.setter 3283 def Manufacturer(self, value: str) -> None: 3284 self._Entity.Manufacturer = value 3285 3286 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, gw: float, gl: float, ftu: float, fcus: float, fcub: float, fcuc: float, fsuw: float, fsul: float, sScfl: float = None, sScfh: float = None, k1: float = None, k2: float = None, k3: float = None, c: float = None) -> HoneycombTemperature: 3287 return HoneycombTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, gw, gl, ftu, fcus, fcub, fcuc, fsuw, fsul, sScfl, sScfh, k1, k2, k3, c)) 3288 3289 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3290 return self._Entity.DeleteTemperatureProperty(temperature) 3291 3292 def GetTemperature(self, lookupTemperature: float) -> HoneycombTemperature: 3293 return HoneycombTemperature(self._Entity.GetTemperature(lookupTemperature)) 3294 3295 def Save(self) -> None: 3296 ''' 3297 Save any changes to this honeycomb material to the database. 3298 ''' 3299 return self._Entity.Save() 3300 3301 3302class IsotropicTemperature: 3303 ''' 3304 Isotropic material temperature dependent properties. 3305 ''' 3306 def __init__(self, isotropicTemperature: _api.IsotropicTemperature): 3307 self._Entity = isotropicTemperature 3308 3309 @property 3310 def Temperature(self) -> float: 3311 return self._Entity.Temperature 3312 3313 @property 3314 def Et(self) -> float: 3315 return self._Entity.Et 3316 3317 @property 3318 def Ec(self) -> float: 3319 return self._Entity.Ec 3320 3321 @property 3322 def G(self) -> float: 3323 return self._Entity.G 3324 3325 @property 3326 def n(self) -> float: 3327 return self._Entity.n 3328 3329 @property 3330 def F02(self) -> float: 3331 return self._Entity.F02 3332 3333 @property 3334 def FtuL(self) -> float: 3335 return self._Entity.FtuL 3336 3337 @property 3338 def FtyL(self) -> float: 3339 return self._Entity.FtyL 3340 3341 @property 3342 def FcyL(self) -> float: 3343 return self._Entity.FcyL 3344 3345 @property 3346 def FtuLT(self) -> float: 3347 return self._Entity.FtuLT 3348 3349 @property 3350 def FtyLT(self) -> float: 3351 return self._Entity.FtyLT 3352 3353 @property 3354 def FcyLT(self) -> float: 3355 return self._Entity.FcyLT 3356 3357 @property 3358 def Fsu(self) -> float: 3359 return self._Entity.Fsu 3360 3361 @property 3362 def Fbru15(self) -> float: 3363 return self._Entity.Fbru15 3364 3365 @property 3366 def Fbry15(self) -> float: 3367 return self._Entity.Fbry15 3368 3369 @property 3370 def Fbru20(self) -> float: 3371 return self._Entity.Fbru20 3372 3373 @property 3374 def Fbry20(self) -> float: 3375 return self._Entity.Fbry20 3376 3377 @property 3378 def alpha(self) -> float: 3379 return self._Entity.alpha 3380 3381 @property 3382 def K(self) -> float: 3383 return self._Entity.K 3384 3385 @property 3386 def C(self) -> float: 3387 return self._Entity.C 3388 3389 @property 3390 def etyL(self) -> float: 3391 return self._Entity.etyL 3392 3393 @property 3394 def ecyL(self) -> float: 3395 return self._Entity.ecyL 3396 3397 @property 3398 def etyLT(self) -> float: 3399 return self._Entity.etyLT 3400 3401 @property 3402 def ecyLT(self) -> float: 3403 return self._Entity.ecyLT 3404 3405 @property 3406 def esu(self) -> float: 3407 return self._Entity.esu 3408 3409 @property 3410 def Fpadh(self) -> float: 3411 return self._Entity.Fpadh 3412 3413 @property 3414 def Fsadh(self) -> float: 3415 return self._Entity.Fsadh 3416 3417 @property 3418 def esadh(self) -> float: 3419 return self._Entity.esadh 3420 3421 @property 3422 def cd(self) -> float: 3423 return self._Entity.cd 3424 3425 @property 3426 def Ffwt(self) -> float: 3427 return self._Entity.Ffwt 3428 3429 @property 3430 def Ffxz(self) -> float: 3431 return self._Entity.Ffxz 3432 3433 @property 3434 def Ffyz(self) -> float: 3435 return self._Entity.Ffyz 3436 3437 @property 3438 def FtFatigue(self) -> float: 3439 return self._Entity.FtFatigue 3440 3441 @property 3442 def FcFatigue(self) -> float: 3443 return self._Entity.FcFatigue 3444 3445 @Temperature.setter 3446 def Temperature(self, value: float) -> None: 3447 self._Entity.Temperature = value 3448 3449 @Et.setter 3450 def Et(self, value: float) -> None: 3451 self._Entity.Et = value 3452 3453 @Ec.setter 3454 def Ec(self, value: float) -> None: 3455 self._Entity.Ec = value 3456 3457 @G.setter 3458 def G(self, value: float) -> None: 3459 self._Entity.G = value 3460 3461 @n.setter 3462 def n(self, value: float) -> None: 3463 self._Entity.n = value 3464 3465 @F02.setter 3466 def F02(self, value: float) -> None: 3467 self._Entity.F02 = value 3468 3469 @FtuL.setter 3470 def FtuL(self, value: float) -> None: 3471 self._Entity.FtuL = value 3472 3473 @FtyL.setter 3474 def FtyL(self, value: float) -> None: 3475 self._Entity.FtyL = value 3476 3477 @FcyL.setter 3478 def FcyL(self, value: float) -> None: 3479 self._Entity.FcyL = value 3480 3481 @FtuLT.setter 3482 def FtuLT(self, value: float) -> None: 3483 self._Entity.FtuLT = value 3484 3485 @FtyLT.setter 3486 def FtyLT(self, value: float) -> None: 3487 self._Entity.FtyLT = value 3488 3489 @FcyLT.setter 3490 def FcyLT(self, value: float) -> None: 3491 self._Entity.FcyLT = value 3492 3493 @Fsu.setter 3494 def Fsu(self, value: float) -> None: 3495 self._Entity.Fsu = value 3496 3497 @Fbru15.setter 3498 def Fbru15(self, value: float) -> None: 3499 self._Entity.Fbru15 = value 3500 3501 @Fbry15.setter 3502 def Fbry15(self, value: float) -> None: 3503 self._Entity.Fbry15 = value 3504 3505 @Fbru20.setter 3506 def Fbru20(self, value: float) -> None: 3507 self._Entity.Fbru20 = value 3508 3509 @Fbry20.setter 3510 def Fbry20(self, value: float) -> None: 3511 self._Entity.Fbry20 = value 3512 3513 @alpha.setter 3514 def alpha(self, value: float) -> None: 3515 self._Entity.alpha = value 3516 3517 @K.setter 3518 def K(self, value: float) -> None: 3519 self._Entity.K = value 3520 3521 @C.setter 3522 def C(self, value: float) -> None: 3523 self._Entity.C = value 3524 3525 @etyL.setter 3526 def etyL(self, value: float) -> None: 3527 self._Entity.etyL = value 3528 3529 @ecyL.setter 3530 def ecyL(self, value: float) -> None: 3531 self._Entity.ecyL = value 3532 3533 @etyLT.setter 3534 def etyLT(self, value: float) -> None: 3535 self._Entity.etyLT = value 3536 3537 @ecyLT.setter 3538 def ecyLT(self, value: float) -> None: 3539 self._Entity.ecyLT = value 3540 3541 @esu.setter 3542 def esu(self, value: float) -> None: 3543 self._Entity.esu = value 3544 3545 @Fpadh.setter 3546 def Fpadh(self, value: float) -> None: 3547 self._Entity.Fpadh = value 3548 3549 @Fsadh.setter 3550 def Fsadh(self, value: float) -> None: 3551 self._Entity.Fsadh = value 3552 3553 @esadh.setter 3554 def esadh(self, value: float) -> None: 3555 self._Entity.esadh = value 3556 3557 @cd.setter 3558 def cd(self, value: float) -> None: 3559 self._Entity.cd = value 3560 3561 @Ffwt.setter 3562 def Ffwt(self, value: float) -> None: 3563 self._Entity.Ffwt = value 3564 3565 @Ffxz.setter 3566 def Ffxz(self, value: float) -> None: 3567 self._Entity.Ffxz = value 3568 3569 @Ffyz.setter 3570 def Ffyz(self, value: float) -> None: 3571 self._Entity.Ffyz = value 3572 3573 @FtFatigue.setter 3574 def FtFatigue(self, value: float) -> None: 3575 self._Entity.FtFatigue = value 3576 3577 @FcFatigue.setter 3578 def FcFatigue(self, value: float) -> None: 3579 self._Entity.FcFatigue = value 3580 3581 3582class Isotropic: 3583 ''' 3584 Isotropic material. 3585 ''' 3586 def __init__(self, isotropic: _api.Isotropic): 3587 self._Entity = isotropic 3588 3589 @property 3590 def MaterialFamilyName(self) -> str: 3591 return self._Entity.MaterialFamilyName 3592 3593 @property 3594 def Id(self) -> int: 3595 return self._Entity.Id 3596 3597 @property 3598 def CreationDate(self) -> DateTime: 3599 return self._Entity.CreationDate 3600 3601 @property 3602 def ModificationDate(self) -> DateTime: 3603 return self._Entity.ModificationDate 3604 3605 @property 3606 def Name(self) -> str: 3607 return self._Entity.Name 3608 3609 @property 3610 def Form(self) -> str: 3611 return self._Entity.Form 3612 3613 @property 3614 def Specification(self) -> str: 3615 return self._Entity.Specification 3616 3617 @property 3618 def Temper(self) -> str: 3619 return self._Entity.Temper 3620 3621 @property 3622 def Basis(self) -> str: 3623 return self._Entity.Basis 3624 3625 @property 3626 def Density(self) -> float: 3627 return self._Entity.Density 3628 3629 @property 3630 def MaterialDescription(self) -> str: 3631 return self._Entity.MaterialDescription 3632 3633 @property 3634 def UserNote(self) -> str: 3635 return self._Entity.UserNote 3636 3637 @property 3638 def FemMaterialId(self) -> int: 3639 return self._Entity.FemMaterialId 3640 3641 @property 3642 def Cost(self) -> float: 3643 return self._Entity.Cost 3644 3645 @property 3646 def BucklingStiffnessKnockdown(self) -> float: 3647 return self._Entity.BucklingStiffnessKnockdown 3648 3649 @property 3650 def IsotropicTemperatureProperties(self) -> list[IsotropicTemperature]: 3651 return [IsotropicTemperature(isotropicTemperature) for isotropicTemperature in self._Entity.IsotropicTemperatureProperties] 3652 3653 @MaterialFamilyName.setter 3654 def MaterialFamilyName(self, value: str) -> None: 3655 self._Entity.MaterialFamilyName = value 3656 3657 @Name.setter 3658 def Name(self, value: str) -> None: 3659 self._Entity.Name = value 3660 3661 @Form.setter 3662 def Form(self, value: str) -> None: 3663 self._Entity.Form = value 3664 3665 @Specification.setter 3666 def Specification(self, value: str) -> None: 3667 self._Entity.Specification = value 3668 3669 @Temper.setter 3670 def Temper(self, value: str) -> None: 3671 self._Entity.Temper = value 3672 3673 @Basis.setter 3674 def Basis(self, value: str) -> None: 3675 self._Entity.Basis = value 3676 3677 @Density.setter 3678 def Density(self, value: float) -> None: 3679 self._Entity.Density = value 3680 3681 @MaterialDescription.setter 3682 def MaterialDescription(self, value: str) -> None: 3683 self._Entity.MaterialDescription = value 3684 3685 @UserNote.setter 3686 def UserNote(self, value: str) -> None: 3687 self._Entity.UserNote = value 3688 3689 @FemMaterialId.setter 3690 def FemMaterialId(self, value: int) -> None: 3691 self._Entity.FemMaterialId = value 3692 3693 @Cost.setter 3694 def Cost(self, value: float) -> None: 3695 self._Entity.Cost = value 3696 3697 @BucklingStiffnessKnockdown.setter 3698 def BucklingStiffnessKnockdown(self, value: float) -> None: 3699 self._Entity.BucklingStiffnessKnockdown = value 3700 3701 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftuL: float, ftyL: float, fcyL: float, ftuLT: float, ftyLT: float, fcyLT: float, fsu: float, alpha: float, n: float = None, f02: float = None, k: float = None, c: float = None, fbru15: float = None, fbry15: float = None, fbru20: float = None, fbry20: float = None, etyL: float = None, ecyL: float = None, etyLT: float = None, ecyLT: float = None, esu: float = None, fpadh: float = None, fsadh: float = None, esadh: float = None, cd: float = None, ffwt: float = None, ffxz: float = None, ffyz: float = None, ftFatigue: float = None, fcFatigue: float = None) -> IsotropicTemperature: 3702 return IsotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftuL, ftyL, fcyL, ftuLT, ftyLT, fcyLT, fsu, alpha, n, f02, k, c, fbru15, fbry15, fbru20, fbry20, etyL, ecyL, etyLT, ecyLT, esu, fpadh, fsadh, esadh, cd, ffwt, ffxz, ffyz, ftFatigue, fcFatigue)) 3703 3704 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3705 return self._Entity.DeleteTemperatureProperty(temperature) 3706 3707 def GetTemperature(self, lookupTemperature: float) -> IsotropicTemperature: 3708 return IsotropicTemperature(self._Entity.GetTemperature(lookupTemperature)) 3709 3710 def Save(self) -> None: 3711 ''' 3712 Save any changes to this isotropic material to the database. 3713 ''' 3714 return self._Entity.Save() 3715 3716 3717class LaminateBase(ABC): 3718 def __init__(self, laminateBase: _api.LaminateBase): 3719 self._Entity = laminateBase 3720 3721 @property 3722 def Id(self) -> int: 3723 return self._Entity.Id 3724 3725 @property 3726 def Name(self) -> str: 3727 return self._Entity.Name 3728 3729 @property 3730 def IsEditable(self) -> bool: 3731 return self._Entity.IsEditable 3732 3733 @property 3734 def MaterialFamilyName(self) -> str: 3735 return self._Entity.MaterialFamilyName 3736 3737 @property 3738 def LayerCount(self) -> int: 3739 return self._Entity.LayerCount 3740 3741 @property 3742 def Density(self) -> float: 3743 return self._Entity.Density 3744 3745 @property 3746 def Thickness(self) -> float: 3747 return self._Entity.Thickness 3748 3749 @property 3750 def LaminateFamilyId(self) -> int: 3751 return self._Entity.LaminateFamilyId 3752 3753 @property 3754 def LaminateFamilyOrder(self) -> int: 3755 return self._Entity.LaminateFamilyOrder 3756 3757 @property 3758 def HyperLaminate(self) -> bool: 3759 return self._Entity.HyperLaminate 3760 3761 @Name.setter 3762 def Name(self, value: str) -> None: 3763 self._Entity.Name = value 3764 3765 @MaterialFamilyName.setter 3766 def MaterialFamilyName(self, value: str) -> None: 3767 self._Entity.MaterialFamilyName = value 3768 3769 @abstractmethod 3770 def Save(self) -> None: 3771 ''' 3772 Save the laminate. 3773 ''' 3774 return self._Entity.Save() 3775 3776 3777class LaminateFamily(IdNameEntity): 3778 def __init__(self, laminateFamily: _api.LaminateFamily): 3779 self._Entity = laminateFamily 3780 3781 @property 3782 def Laminates(self) -> list[LaminateBase]: 3783 return [LaminateBase(laminateBase) for laminateBase in self._Entity.Laminates] 3784 3785 @property 3786 def ModificationDate(self) -> DateTime: 3787 return self._Entity.ModificationDate 3788 3789 @property 3790 def PlankSetting(self) -> types.LaminateFamilySettingType: 3791 return types.LaminateFamilySettingType[self._Entity.PlankSetting.ToString()] 3792 3793 @property 3794 def PlankMinRatio(self) -> float: 3795 return self._Entity.PlankMinRatio 3796 3797 @property 3798 def PlankMaxRatio(self) -> float: 3799 return self._Entity.PlankMaxRatio 3800 3801 @property 3802 def FootChargeSetting(self) -> types.LaminateFamilySettingType: 3803 return types.LaminateFamilySettingType[self._Entity.FootChargeSetting.ToString()] 3804 3805 @property 3806 def FootChargeMinRatio(self) -> float: 3807 return self._Entity.FootChargeMinRatio 3808 3809 @property 3810 def FootChargeMaxRatio(self) -> float: 3811 return self._Entity.FootChargeMaxRatio 3812 3813 @property 3814 def WebChargeSetting(self) -> types.LaminateFamilySettingType: 3815 return types.LaminateFamilySettingType[self._Entity.WebChargeSetting.ToString()] 3816 3817 @property 3818 def WebChargeMinRatio(self) -> float: 3819 return self._Entity.WebChargeMinRatio 3820 3821 @property 3822 def WebChargeMaxRatio(self) -> float: 3823 return self._Entity.WebChargeMaxRatio 3824 3825 @property 3826 def CapChargeSetting(self) -> types.LaminateFamilySettingType: 3827 return types.LaminateFamilySettingType[self._Entity.CapChargeSetting.ToString()] 3828 3829 @property 3830 def CapChargeMinRatio(self) -> float: 3831 return self._Entity.CapChargeMinRatio 3832 3833 @property 3834 def CapChargeMaxRatio(self) -> float: 3835 return self._Entity.CapChargeMaxRatio 3836 3837 @property 3838 def CapCoverSetting(self) -> types.LaminateFamilySettingType: 3839 return types.LaminateFamilySettingType[self._Entity.CapCoverSetting.ToString()] 3840 3841 @property 3842 def CapCoverMinRatio(self) -> float: 3843 return self._Entity.CapCoverMinRatio 3844 3845 @property 3846 def CapCoverMaxRatio(self) -> float: 3847 return self._Entity.CapCoverMaxRatio 3848 3849 @property 3850 def DropPattern(self) -> types.PlyDropPattern: 3851 return types.PlyDropPattern[self._Entity.DropPattern.ToString()] 3852 3853 @property 3854 def LaminateStiffenerProfile(self) -> types.StiffenerProfile: 3855 return types.StiffenerProfile[self._Entity.LaminateStiffenerProfile.ToString()] 3856 3857 3858class LaminateLayerBase(ABC): 3859 def __init__(self, laminateLayerBase: _api.LaminateLayerBase): 3860 self._Entity = laminateLayerBase 3861 3862 @property 3863 def LayerId(self) -> int: 3864 return self._Entity.LayerId 3865 3866 @property 3867 def LayerMaterial(self) -> str: 3868 return self._Entity.LayerMaterial 3869 3870 @property 3871 def LayerMaterialType(self) -> types.MaterialType: 3872 ''' 3873 Represents a material's type. 3874 ''' 3875 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3876 3877 @property 3878 def Angle(self) -> float: 3879 return self._Entity.Angle 3880 3881 @property 3882 def Thickness(self) -> float: 3883 return self._Entity.Thickness 3884 3885 @property 3886 def IsFabric(self) -> bool: 3887 return self._Entity.IsFabric 3888 3889 @Angle.setter 3890 @abstractmethod 3891 def Angle(self, value: float) -> None: 3892 self._Entity.Angle = value 3893 3894 def SetThickness(self, thickness: float) -> None: 3895 return self._Entity.SetThickness(thickness) 3896 3897 @overload 3898 def SetMaterial(self, matId: int) -> bool: ... 3899 3900 @overload 3901 def SetMaterial(self, matName: str) -> bool: ... 3902 3903 def SetMaterial(self, item1 = None) -> bool: 3904 if isinstance(item1, int): 3905 return self._Entity.SetMaterial(item1) 3906 3907 if isinstance(item1, str): 3908 return self._Entity.SetMaterial(item1) 3909 3910 return self._Entity.SetMaterial(item1) 3911 3912 3913class LaminateLayer(LaminateLayerBase): 3914 ''' 3915 Layer in a non-stiffener laminate. 3916 ''' 3917 def __init__(self, laminateLayer: _api.LaminateLayer): 3918 self._Entity = laminateLayer 3919 3920 @property 3921 def LayerId(self) -> int: 3922 return self._Entity.LayerId 3923 3924 @property 3925 def LayerMaterialType(self) -> types.MaterialType: 3926 ''' 3927 Represents a material's type. 3928 ''' 3929 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3930 3931 @property 3932 def Angle(self) -> float: 3933 return self._Entity.Angle 3934 3935 @property 3936 def Thickness(self) -> float: 3937 return self._Entity.Thickness 3938 3939 @property 3940 def IsFabric(self) -> bool: 3941 return self._Entity.IsFabric 3942 3943 @Angle.setter 3944 def Angle(self, value: float) -> None: 3945 self._Entity.Angle = value 3946 3947 @overload 3948 def SetMaterial(self, matId: int) -> bool: ... 3949 3950 @overload 3951 def SetMaterial(self, matName: str) -> bool: ... 3952 3953 def SetMaterial(self, item1 = None) -> bool: 3954 if isinstance(item1, int): 3955 return bool(super().SetMaterial(item1)) 3956 3957 if isinstance(item1, str): 3958 return bool(super().SetMaterial(item1)) 3959 3960 return self._Entity.SetMaterial(item1) 3961 3962 3963class Laminate(LaminateBase): 3964 ''' 3965 Laminate 3966 ''' 3967 def __init__(self, laminate: _api.Laminate): 3968 self._Entity = laminate 3969 3970 @property 3971 def Layers(self) -> list[LaminateLayer]: 3972 return [LaminateLayer(laminateLayer) for laminateLayer in self._Entity.Layers] 3973 3974 def AddLayer(self, materialName: str, angle: float, thickness: float = None) -> LaminateLayer: 3975 return LaminateLayer(self._Entity.AddLayer(materialName, angle, thickness)) 3976 3977 def InsertLayer(self, layerId: int, materialName: str, angle: float, thickness: float = None) -> LaminateLayer: 3978 return LaminateLayer(self._Entity.InsertLayer(layerId, materialName, angle, thickness)) 3979 3980 def RemoveLayer(self, layerId: int) -> bool: 3981 return self._Entity.RemoveLayer(layerId) 3982 3983 def Save(self) -> None: 3984 ''' 3985 Save any changes to this laminate material to the database. 3986 ''' 3987 return self._Entity.Save() 3988 3989 3990class StiffenerLaminateLayer(LaminateLayerBase): 3991 ''' 3992 Stiffener Laminate Layer 3993 ''' 3994 def __init__(self, stiffenerLaminateLayer: _api.StiffenerLaminateLayer): 3995 self._Entity = stiffenerLaminateLayer 3996 3997 @property 3998 def LayerLocations(self) -> list[types.StiffenerLaminateLayerLocation]: 3999 return [types.StiffenerLaminateLayerLocation[stiffenerLaminateLayerLocation.ToString()] for stiffenerLaminateLayerLocation in self._Entity.LayerLocations] 4000 4001 @property 4002 def LayerId(self) -> int: 4003 return self._Entity.LayerId 4004 4005 @property 4006 def LayerMaterialType(self) -> types.MaterialType: 4007 ''' 4008 Represents a material's type. 4009 ''' 4010 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 4011 4012 @property 4013 def Angle(self) -> float: 4014 return self._Entity.Angle 4015 4016 @property 4017 def Thickness(self) -> float: 4018 return self._Entity.Thickness 4019 4020 @property 4021 def IsFabric(self) -> bool: 4022 return self._Entity.IsFabric 4023 4024 @Angle.setter 4025 def Angle(self, value: float) -> None: 4026 self._Entity.Angle = value 4027 4028 def AddLayerLocation(self, location: types.StiffenerLaminateLayerLocation) -> None: 4029 return self._Entity.AddLayerLocation(_types.StiffenerLaminateLayerLocation(location.value)) 4030 4031 def RemoveLayerLocation(self, location: types.StiffenerLaminateLayerLocation) -> bool: 4032 return self._Entity.RemoveLayerLocation(_types.StiffenerLaminateLayerLocation(location.value)) 4033 4034 @overload 4035 def SetMaterial(self, matId: int) -> bool: ... 4036 4037 @overload 4038 def SetMaterial(self, matName: str) -> bool: ... 4039 4040 def SetMaterial(self, item1 = None) -> bool: 4041 if isinstance(item1, int): 4042 return bool(super().SetMaterial(item1)) 4043 4044 if isinstance(item1, str): 4045 return bool(super().SetMaterial(item1)) 4046 4047 return self._Entity.SetMaterial(item1) 4048 4049 4050class StiffenerLaminate(LaminateBase): 4051 ''' 4052 Stiffener Laminate 4053 ''' 4054 def __init__(self, stiffenerLaminate: _api.StiffenerLaminate): 4055 self._Entity = stiffenerLaminate 4056 4057 @property 4058 def Layers(self) -> list[StiffenerLaminateLayer]: 4059 return [StiffenerLaminateLayer(stiffenerLaminateLayer) for stiffenerLaminateLayer in self._Entity.Layers] 4060 4061 @property 4062 def LaminateStiffenerProfile(self) -> types.StiffenerProfile: 4063 return types.StiffenerProfile[self._Entity.LaminateStiffenerProfile.ToString()] 4064 4065 @overload 4066 def AddLayer(self, location: types.StiffenerLaminateLayerLocation, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4067 4068 @overload 4069 def InsertLayer(self, location: types.StiffenerLaminateLayerLocation, layerId: int, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4070 4071 @overload 4072 def AddLayer(self, locations: tuple[types.StiffenerLaminateLayerLocation], materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4073 4074 @overload 4075 def InsertLayer(self, locations: tuple[types.StiffenerLaminateLayerLocation], layerId: int, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4076 4077 def RemoveLayer(self, layerId: int) -> bool: 4078 return self._Entity.RemoveLayer(layerId) 4079 4080 def Save(self) -> None: 4081 ''' 4082 Save laminate to database. 4083 ''' 4084 return self._Entity.Save() 4085 4086 def AddLayer(self, item1 = None, item2 = None, item3 = None, item4 = None) -> StiffenerLaminateLayer: 4087 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4088 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)) 4089 4090 if isinstance(item1, tuple) and item1 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4091 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4092 if item1 is not None: 4093 for thing in item1: 4094 if thing is not None: 4095 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4096 locationsEnumerable = IEnumerable(locationsList) 4097 return StiffenerLaminateLayer(self._Entity.AddLayer(locationsEnumerable, item2, item3, item4)) 4098 4099 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)) 4100 4101 def InsertLayer(self, item1 = None, item2 = None, item3 = None, item4 = None, item5 = None) -> StiffenerLaminateLayer: 4102 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4103 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)) 4104 4105 if isinstance(item1, tuple) and item1 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4106 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4107 if item1 is not None: 4108 for thing in item1: 4109 if thing is not None: 4110 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4111 locationsEnumerable = IEnumerable(locationsList) 4112 return StiffenerLaminateLayer(self._Entity.InsertLayer(locationsEnumerable, item2, item3, item4, item5)) 4113 4114 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)) 4115 4116 4117class OrthotropicCorrectionFactorBase(ABC): 4118 ''' 4119 Orthotropic material correction factor. 4120 ''' 4121 def __init__(self, orthotropicCorrectionFactorBase: _api.OrthotropicCorrectionFactorBase): 4122 self._Entity = orthotropicCorrectionFactorBase 4123 4124 @property 4125 def CorrectionId(self) -> types.CorrectionId: 4126 ''' 4127 Correction ID for a correction factor. (Columns in HyperX) 4128 ''' 4129 return types.CorrectionId[self._Entity.CorrectionId.ToString()] 4130 4131 @property 4132 def PropertyId(self) -> types.CorrectionProperty: 4133 ''' 4134 Property name for a correction factor. (Rows in HyperX) 4135 ''' 4136 return types.CorrectionProperty[self._Entity.PropertyId.ToString()] 4137 4138 4139class OrthotropicCorrectionFactorPoint: 4140 ''' 4141 Pointer to an Equation-based or Tabular Correction Factor. 4142 ''' 4143 def __init__(self, orthotropicCorrectionFactorPoint: _api.OrthotropicCorrectionFactorPoint): 4144 self._Entity = orthotropicCorrectionFactorPoint 4145 4146 def Create_OrthotropicCorrectionFactorPoint(property: types.CorrectionProperty, id: types.CorrectionId): 4147 return OrthotropicCorrectionFactorPoint(_api.OrthotropicCorrectionFactorPoint(_types.CorrectionProperty(property.value), _types.CorrectionId(id.value))) 4148 4149 @property 4150 def CorrectionProperty(self) -> types.CorrectionProperty: 4151 ''' 4152 Property name for a correction factor. (Rows in HyperX) 4153 ''' 4154 return types.CorrectionProperty[self._Entity.CorrectionProperty.ToString()] 4155 4156 @property 4157 def CorrectionId(self) -> types.CorrectionId: 4158 ''' 4159 Correction ID for a correction factor. (Columns in HyperX) 4160 ''' 4161 return types.CorrectionId[self._Entity.CorrectionId.ToString()] 4162 4163 @overload 4164 def Equals(self, other) -> bool: ... 4165 4166 @overload 4167 def Equals(self, obj) -> bool: ... 4168 4169 def GetHashCode(self) -> int: 4170 return self._Entity.GetHashCode() 4171 4172 def Equals(self, item1 = None) -> bool: 4173 if isinstance(item1, OrthotropicCorrectionFactorPoint): 4174 return self._Entity.Equals(item1._Entity) 4175 4176 return self._Entity.Equals(item1._Entity) 4177 4178 4179class OrthotropicCorrectionFactorValue: 4180 ''' 4181 Orthotropic material equation-based correction factor value. (NOT TABULAR) 4182 ''' 4183 def __init__(self, orthotropicCorrectionFactorValue: _api.OrthotropicCorrectionFactorValue): 4184 self._Entity = orthotropicCorrectionFactorValue 4185 4186 @property 4187 def Property(self) -> types.CorrectionProperty: 4188 ''' 4189 Property name for a correction factor. (Rows in HyperX) 4190 ''' 4191 return types.CorrectionProperty[self._Entity.Property.ToString()] 4192 4193 @property 4194 def Correction(self) -> types.CorrectionId: 4195 ''' 4196 Correction ID for a correction factor. (Columns in HyperX) 4197 ''' 4198 return types.CorrectionId[self._Entity.Correction.ToString()] 4199 4200 @property 4201 def Equation(self) -> types.CorrectionEquation: 4202 ''' 4203 Equation for a correction factor. 4204 ''' 4205 return types.CorrectionEquation[self._Entity.Equation.ToString()] 4206 4207 @property 4208 def EquationParameter(self) -> types.EquationParameterId: 4209 ''' 4210 Correction factor parameter names. 4211 ''' 4212 return types.EquationParameterId[self._Entity.EquationParameter.ToString()] 4213 4214 @property 4215 def Value(self) -> float: 4216 return self._Entity.Value 4217 4218 @Value.setter 4219 def Value(self, value: float) -> None: 4220 self._Entity.Value = value 4221 4222 4223class OrthotropicEquationCorrectionFactor(OrthotropicCorrectionFactorBase): 4224 ''' 4225 Represents an equation-based orthotropic material correction factor. 4226 ''' 4227 def __init__(self, orthotropicEquationCorrectionFactor: _api.OrthotropicEquationCorrectionFactor): 4228 self._Entity = orthotropicEquationCorrectionFactor 4229 4230 @property 4231 def Equation(self) -> types.CorrectionEquation: 4232 ''' 4233 Equation for a correction factor. 4234 ''' 4235 return types.CorrectionEquation[self._Entity.Equation.ToString()] 4236 4237 @property 4238 def OrthotropicCorrectionValues(self) -> dict[types.EquationParameterId, OrthotropicCorrectionFactorValue]: 4239 orthotropicCorrectionValuesDict = {} 4240 for kvp in self._Entity.OrthotropicCorrectionValues: 4241 orthotropicCorrectionValuesDict[types.EquationParameterId[kvp.Key.ToString()]] = OrthotropicCorrectionFactorValue(kvp.Value) 4242 4243 return orthotropicCorrectionValuesDict 4244 4245 def AddCorrectionFactorValue(self, equationParameterName: types.EquationParameterId, valueToAdd: float) -> OrthotropicCorrectionFactorValue: 4246 return OrthotropicCorrectionFactorValue(self._Entity.AddCorrectionFactorValue(_types.EquationParameterId(equationParameterName.value), valueToAdd)) 4247 4248 4249class TabularCorrectionFactorIndependentValue: 4250 ''' 4251 Contains an independent value for a tabular correction factor row. 4252 ''' 4253 def __init__(self, tabularCorrectionFactorIndependentValue: _api.TabularCorrectionFactorIndependentValue): 4254 self._Entity = tabularCorrectionFactorIndependentValue 4255 4256 @property 4257 def BoolValue(self) -> bool: 4258 return self._Entity.BoolValue 4259 4260 @property 4261 def DoubleValue(self) -> float: 4262 return self._Entity.DoubleValue 4263 4264 @property 4265 def IntValue(self) -> int: 4266 return self._Entity.IntValue 4267 4268 @property 4269 def ValueType(self) -> types.CorrectionValueType: 4270 ''' 4271 Defines the type of the independent values on a tabular correction factor row. 4272 ''' 4273 return types.CorrectionValueType[self._Entity.ValueType.ToString()] 4274 4275 4276class TabularCorrectionFactorRow: 4277 ''' 4278 Row data for a tabular correction factor. 4279 ''' 4280 def __init__(self, tabularCorrectionFactorRow: _api.TabularCorrectionFactorRow): 4281 self._Entity = tabularCorrectionFactorRow 4282 4283 @property 4284 def DependentValue(self) -> float: 4285 return self._Entity.DependentValue 4286 4287 @property 4288 def IndependentValues(self) -> dict[types.CorrectionIndependentDefinition, TabularCorrectionFactorIndependentValue]: 4289 independentValuesDict = {} 4290 for kvp in self._Entity.IndependentValues: 4291 independentValuesDict[types.CorrectionIndependentDefinition[kvp.Key.ToString()]] = TabularCorrectionFactorIndependentValue(kvp.Value) 4292 4293 return independentValuesDict 4294 4295 4296class OrthotropicTabularCorrectionFactor(OrthotropicCorrectionFactorBase): 4297 ''' 4298 Tabular correction factor. 4299 ''' 4300 def __init__(self, orthotropicTabularCorrectionFactor: _api.OrthotropicTabularCorrectionFactor): 4301 self._Entity = orthotropicTabularCorrectionFactor 4302 4303 @property 4304 def CorrectionFactorRows(self) -> dict[int, TabularCorrectionFactorRow]: 4305 correctionFactorRowsDict = {} 4306 for kvp in self._Entity.CorrectionFactorRows: 4307 correctionFactorRowsDict[int(kvp.Key)] = TabularCorrectionFactorRow(kvp.Value) 4308 4309 return correctionFactorRowsDict 4310 4311 @property 4312 def CorrectionIndependentDefinitions(self) -> set[types.CorrectionIndependentDefinition]: 4313 return {types.CorrectionIndependentDefinition(correctionIndependentDefinition) for correctionIndependentDefinition in self._Entity.CorrectionIndependentDefinitions} 4314 4315 @overload 4316 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: float) -> None: ... 4317 4318 @overload 4319 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: bool) -> None: ... 4320 4321 @overload 4322 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: int) -> None: ... 4323 4324 def SetKValue(self, correctionPointId: int, value: float) -> None: 4325 return self._Entity.SetKValue(correctionPointId, value) 4326 4327 def SetIndependentValue(self, item1 = None, item2 = None, item3 = None) -> None: 4328 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, float): 4329 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4330 4331 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, bool): 4332 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4333 4334 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, int): 4335 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4336 4337 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4338 4339 4340class OrthotropicAllowableCurvePoint: 4341 ''' 4342 Represents a point on a laminate allowable curve. 4343 ''' 4344 def __init__(self, orthotropicAllowableCurvePoint: _api.OrthotropicAllowableCurvePoint): 4345 self._Entity = orthotropicAllowableCurvePoint 4346 4347 @property 4348 def Property_ID(self) -> types.AllowablePropertyName: 4349 ''' 4350 Property name for a laminate allowable. 4351 ''' 4352 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()] 4353 4354 @property 4355 def Temperature(self) -> float: 4356 return self._Entity.Temperature 4357 4358 @property 4359 def X(self) -> float: 4360 return self._Entity.X 4361 4362 @property 4363 def Y(self) -> float: 4364 return self._Entity.Y 4365 4366 @Property_ID.setter 4367 def Property_ID(self, value: types.AllowablePropertyName) -> None: 4368 self._Entity.Property_ID = _types.AllowablePropertyName(value.value) 4369 4370 @Temperature.setter 4371 def Temperature(self, value: float) -> None: 4372 self._Entity.Temperature = value 4373 4374 @X.setter 4375 def X(self, value: float) -> None: 4376 self._Entity.X = value 4377 4378 @Y.setter 4379 def Y(self, value: float) -> None: 4380 self._Entity.Y = value 4381 4382 4383class OrthotropicEffectiveLaminate: 4384 ''' 4385 Orthotropic material effective laminate properties. Read-only from the API. 4386 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4387 ''' 4388 def __init__(self, orthotropicEffectiveLaminate: _api.OrthotropicEffectiveLaminate): 4389 self._Entity = orthotropicEffectiveLaminate 4390 4391 @property 4392 def Percent_tape_0(self) -> float: 4393 return self._Entity.Percent_tape_0 4394 4395 @property 4396 def Percent_tape_90(self) -> float: 4397 return self._Entity.Percent_tape_90 4398 4399 @property 4400 def Percent_tape_45(self) -> float: 4401 return self._Entity.Percent_tape_45 4402 4403 @property 4404 def Percent_fabric_0(self) -> float: 4405 return self._Entity.Percent_fabric_0 4406 4407 @property 4408 def Percent_fabric_90(self) -> float: 4409 return self._Entity.Percent_fabric_90 4410 4411 @property 4412 def Percent_fabric_45(self) -> float: 4413 return self._Entity.Percent_fabric_45 4414 4415 @property 4416 def Tape_Orthotropic(self) -> str: 4417 return self._Entity.Tape_Orthotropic 4418 4419 @property 4420 def Fabric_Orthotropic(self) -> str: 4421 return self._Entity.Fabric_Orthotropic 4422 4423 @property 4424 def Valid(self) -> bool: 4425 return self._Entity.Valid 4426 4427 @property 4428 def Use_tape_allowables(self) -> bool: 4429 return self._Entity.Use_tape_allowables 4430 4431 4432class OrthotropicLaminateAllowable: 4433 ''' 4434 Orthotropic material laminate allowable properties. 4435 ''' 4436 def __init__(self, orthotropicLaminateAllowable: _api.OrthotropicLaminateAllowable): 4437 self._Entity = orthotropicLaminateAllowable 4438 4439 @property 4440 def Property_ID(self) -> types.AllowablePropertyName: 4441 ''' 4442 Property name for a laminate allowable. 4443 ''' 4444 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()] 4445 4446 @property 4447 def Method_ID(self) -> types.AllowableMethodName: 4448 ''' 4449 Method name for a laminate allowable. 4450 ''' 4451 return types.AllowableMethodName[self._Entity.Method_ID.ToString()] 4452 4453 @Property_ID.setter 4454 def Property_ID(self, value: types.AllowablePropertyName) -> None: 4455 self._Entity.Property_ID = _types.AllowablePropertyName(value.value) 4456 4457 @Method_ID.setter 4458 def Method_ID(self, value: types.AllowableMethodName) -> None: 4459 self._Entity.Method_ID = _types.AllowableMethodName(value.value) 4460 4461 4462class OrthotropicTemperature: 4463 ''' 4464 Orthotropic material temperature dependent properties. 4465 ''' 4466 def __init__(self, orthotropicTemperature: _api.OrthotropicTemperature): 4467 self._Entity = orthotropicTemperature 4468 4469 @property 4470 def Temperature(self) -> float: 4471 return self._Entity.Temperature 4472 4473 @property 4474 def Et1(self) -> float: 4475 return self._Entity.Et1 4476 4477 @property 4478 def Et2(self) -> float: 4479 return self._Entity.Et2 4480 4481 @property 4482 def vt12(self) -> float: 4483 return self._Entity.vt12 4484 4485 @property 4486 def Ec1(self) -> float: 4487 return self._Entity.Ec1 4488 4489 @property 4490 def Ec2(self) -> float: 4491 return self._Entity.Ec2 4492 4493 @property 4494 def vc12(self) -> float: 4495 return self._Entity.vc12 4496 4497 @property 4498 def G12(self) -> float: 4499 return self._Entity.G12 4500 4501 @property 4502 def G13(self) -> float: 4503 return self._Entity.G13 4504 4505 @property 4506 def G23(self) -> float: 4507 return self._Entity.G23 4508 4509 @property 4510 def Ftu1(self) -> float: 4511 return self._Entity.Ftu1 4512 4513 @property 4514 def Ftu2(self) -> float: 4515 return self._Entity.Ftu2 4516 4517 @property 4518 def Fcu1(self) -> float: 4519 return self._Entity.Fcu1 4520 4521 @property 4522 def Fcu2(self) -> float: 4523 return self._Entity.Fcu2 4524 4525 @property 4526 def Fsu12(self) -> float: 4527 return self._Entity.Fsu12 4528 4529 @property 4530 def Fsu13(self) -> float: 4531 return self._Entity.Fsu13 4532 4533 @property 4534 def Fsu23(self) -> float: 4535 return self._Entity.Fsu23 4536 4537 @property 4538 def GIc(self) -> float: 4539 return self._Entity.GIc 4540 4541 @property 4542 def alpha1(self) -> float: 4543 return self._Entity.alpha1 4544 4545 @property 4546 def alpha2(self) -> float: 4547 return self._Entity.alpha2 4548 4549 @property 4550 def K1(self) -> float: 4551 return self._Entity.K1 4552 4553 @property 4554 def K2(self) -> float: 4555 return self._Entity.K2 4556 4557 @property 4558 def C(self) -> float: 4559 return self._Entity.C 4560 4561 @property 4562 def etu1(self) -> float: 4563 return self._Entity.etu1 4564 4565 @property 4566 def etu2(self) -> float: 4567 return self._Entity.etu2 4568 4569 @property 4570 def ecu1(self) -> float: 4571 return self._Entity.ecu1 4572 4573 @property 4574 def ecu2(self) -> float: 4575 return self._Entity.ecu2 4576 4577 @property 4578 def ecuoh(self) -> float: 4579 return self._Entity.ecuoh 4580 4581 @property 4582 def ecuai(self) -> float: 4583 return self._Entity.ecuai 4584 4585 @property 4586 def esu12(self) -> float: 4587 return self._Entity.esu12 4588 4589 @property 4590 def Ftu3(self) -> float: 4591 return self._Entity.Ftu3 4592 4593 @property 4594 def GIIc(self) -> float: 4595 return self._Entity.GIIc 4596 4597 @property 4598 def d0Tension(self) -> float: 4599 return self._Entity.d0Tension 4600 4601 @property 4602 def cd(self) -> float: 4603 return self._Entity.cd 4604 4605 @property 4606 def d0Compression(self) -> float: 4607 return self._Entity.d0Compression 4608 4609 @property 4610 def TLt(self) -> float: 4611 return self._Entity.TLt 4612 4613 @property 4614 def TLc(self) -> float: 4615 return self._Entity.TLc 4616 4617 @property 4618 def TTt(self) -> float: 4619 return self._Entity.TTt 4620 4621 @property 4622 def TTc(self) -> float: 4623 return self._Entity.TTc 4624 4625 @property 4626 def OrthotropicAllowableCurvePoints(self) -> list[OrthotropicAllowableCurvePoint]: 4627 return [OrthotropicAllowableCurvePoint(orthotropicAllowableCurvePoint) for orthotropicAllowableCurvePoint in self._Entity.OrthotropicAllowableCurvePoints] 4628 4629 @Temperature.setter 4630 def Temperature(self, value: float) -> None: 4631 self._Entity.Temperature = value 4632 4633 @Et1.setter 4634 def Et1(self, value: float) -> None: 4635 self._Entity.Et1 = value 4636 4637 @Et2.setter 4638 def Et2(self, value: float) -> None: 4639 self._Entity.Et2 = value 4640 4641 @vt12.setter 4642 def vt12(self, value: float) -> None: 4643 self._Entity.vt12 = value 4644 4645 @Ec1.setter 4646 def Ec1(self, value: float) -> None: 4647 self._Entity.Ec1 = value 4648 4649 @Ec2.setter 4650 def Ec2(self, value: float) -> None: 4651 self._Entity.Ec2 = value 4652 4653 @vc12.setter 4654 def vc12(self, value: float) -> None: 4655 self._Entity.vc12 = value 4656 4657 @G12.setter 4658 def G12(self, value: float) -> None: 4659 self._Entity.G12 = value 4660 4661 @G13.setter 4662 def G13(self, value: float) -> None: 4663 self._Entity.G13 = value 4664 4665 @G23.setter 4666 def G23(self, value: float) -> None: 4667 self._Entity.G23 = value 4668 4669 @Ftu1.setter 4670 def Ftu1(self, value: float) -> None: 4671 self._Entity.Ftu1 = value 4672 4673 @Ftu2.setter 4674 def Ftu2(self, value: float) -> None: 4675 self._Entity.Ftu2 = value 4676 4677 @Fcu1.setter 4678 def Fcu1(self, value: float) -> None: 4679 self._Entity.Fcu1 = value 4680 4681 @Fcu2.setter 4682 def Fcu2(self, value: float) -> None: 4683 self._Entity.Fcu2 = value 4684 4685 @Fsu12.setter 4686 def Fsu12(self, value: float) -> None: 4687 self._Entity.Fsu12 = value 4688 4689 @Fsu13.setter 4690 def Fsu13(self, value: float) -> None: 4691 self._Entity.Fsu13 = value 4692 4693 @Fsu23.setter 4694 def Fsu23(self, value: float) -> None: 4695 self._Entity.Fsu23 = value 4696 4697 @GIc.setter 4698 def GIc(self, value: float) -> None: 4699 self._Entity.GIc = value 4700 4701 @alpha1.setter 4702 def alpha1(self, value: float) -> None: 4703 self._Entity.alpha1 = value 4704 4705 @alpha2.setter 4706 def alpha2(self, value: float) -> None: 4707 self._Entity.alpha2 = value 4708 4709 @K1.setter 4710 def K1(self, value: float) -> None: 4711 self._Entity.K1 = value 4712 4713 @K2.setter 4714 def K2(self, value: float) -> None: 4715 self._Entity.K2 = value 4716 4717 @C.setter 4718 def C(self, value: float) -> None: 4719 self._Entity.C = value 4720 4721 @etu1.setter 4722 def etu1(self, value: float) -> None: 4723 self._Entity.etu1 = value 4724 4725 @etu2.setter 4726 def etu2(self, value: float) -> None: 4727 self._Entity.etu2 = value 4728 4729 @ecu1.setter 4730 def ecu1(self, value: float) -> None: 4731 self._Entity.ecu1 = value 4732 4733 @ecu2.setter 4734 def ecu2(self, value: float) -> None: 4735 self._Entity.ecu2 = value 4736 4737 @ecuoh.setter 4738 def ecuoh(self, value: float) -> None: 4739 self._Entity.ecuoh = value 4740 4741 @ecuai.setter 4742 def ecuai(self, value: float) -> None: 4743 self._Entity.ecuai = value 4744 4745 @esu12.setter 4746 def esu12(self, value: float) -> None: 4747 self._Entity.esu12 = value 4748 4749 @Ftu3.setter 4750 def Ftu3(self, value: float) -> None: 4751 self._Entity.Ftu3 = value 4752 4753 @GIIc.setter 4754 def GIIc(self, value: float) -> None: 4755 self._Entity.GIIc = value 4756 4757 @d0Tension.setter 4758 def d0Tension(self, value: float) -> None: 4759 self._Entity.d0Tension = value 4760 4761 @cd.setter 4762 def cd(self, value: float) -> None: 4763 self._Entity.cd = value 4764 4765 @d0Compression.setter 4766 def d0Compression(self, value: float) -> None: 4767 self._Entity.d0Compression = value 4768 4769 @TLt.setter 4770 def TLt(self, value: float) -> None: 4771 self._Entity.TLt = value 4772 4773 @TLc.setter 4774 def TLc(self, value: float) -> None: 4775 self._Entity.TLc = value 4776 4777 @TTt.setter 4778 def TTt(self, value: float) -> None: 4779 self._Entity.TTt = value 4780 4781 @TTc.setter 4782 def TTc(self, value: float) -> None: 4783 self._Entity.TTc = value 4784 4785 def AddCurvePoint(self, property: types.AllowablePropertyName, x: float, y: float) -> OrthotropicAllowableCurvePoint: 4786 return OrthotropicAllowableCurvePoint(self._Entity.AddCurvePoint(_types.AllowablePropertyName(property.value), x, y)) 4787 4788 def DeleteCurvePoint(self, property: types.AllowablePropertyName, x: float) -> bool: 4789 return self._Entity.DeleteCurvePoint(_types.AllowablePropertyName(property.value), x) 4790 4791 def GetCurvePoint(self, property: types.AllowablePropertyName, x: float) -> OrthotropicAllowableCurvePoint: 4792 return OrthotropicAllowableCurvePoint(self._Entity.GetCurvePoint(_types.AllowablePropertyName(property.value), x)) 4793 4794 4795class Orthotropic: 4796 ''' 4797 Orthotropic material. 4798 ''' 4799 def __init__(self, orthotropic: _api.Orthotropic): 4800 self._Entity = orthotropic 4801 4802 @property 4803 def MaterialFamilyName(self) -> str: 4804 return self._Entity.MaterialFamilyName 4805 4806 @property 4807 def Id(self) -> int: 4808 return self._Entity.Id 4809 4810 @property 4811 def CreationDate(self) -> DateTime: 4812 return self._Entity.CreationDate 4813 4814 @property 4815 def ModificationDate(self) -> DateTime: 4816 return self._Entity.ModificationDate 4817 4818 @property 4819 def Name(self) -> str: 4820 return self._Entity.Name 4821 4822 @property 4823 def Form(self) -> str: 4824 return self._Entity.Form 4825 4826 @property 4827 def Specification(self) -> str: 4828 return self._Entity.Specification 4829 4830 @property 4831 def Basis(self) -> str: 4832 return self._Entity.Basis 4833 4834 @property 4835 def Wet(self) -> bool: 4836 return self._Entity.Wet 4837 4838 @property 4839 def Thickness(self) -> float: 4840 return self._Entity.Thickness 4841 4842 @property 4843 def Density(self) -> float: 4844 return self._Entity.Density 4845 4846 @property 4847 def FiberVolume(self) -> float: 4848 return self._Entity.FiberVolume 4849 4850 @property 4851 def GlassTransition(self) -> float: 4852 return self._Entity.GlassTransition 4853 4854 @property 4855 def Manufacturer(self) -> str: 4856 return self._Entity.Manufacturer 4857 4858 @property 4859 def Processes(self) -> str: 4860 return self._Entity.Processes 4861 4862 @property 4863 def MaterialDescription(self) -> str: 4864 return self._Entity.MaterialDescription 4865 4866 @property 4867 def UserNote(self) -> str: 4868 return self._Entity.UserNote 4869 4870 @property 4871 def BendingCorrectionFactor(self) -> float: 4872 return self._Entity.BendingCorrectionFactor 4873 4874 @property 4875 def FemMaterialId(self) -> int: 4876 return self._Entity.FemMaterialId 4877 4878 @property 4879 def Cost(self) -> float: 4880 return self._Entity.Cost 4881 4882 @property 4883 def BucklingStiffnessKnockdown(self) -> float: 4884 return self._Entity.BucklingStiffnessKnockdown 4885 4886 @property 4887 def OrthotropicTemperatureProperties(self) -> list[OrthotropicTemperature]: 4888 return [OrthotropicTemperature(orthotropicTemperature) for orthotropicTemperature in self._Entity.OrthotropicTemperatureProperties] 4889 4890 @property 4891 def OrthotropicLaminateAllowables(self) -> list[OrthotropicLaminateAllowable]: 4892 return [OrthotropicLaminateAllowable(orthotropicLaminateAllowable) for orthotropicLaminateAllowable in self._Entity.OrthotropicLaminateAllowables] 4893 4894 @property 4895 def OrthotropicEffectiveLaminate(self) -> OrthotropicEffectiveLaminate: 4896 ''' 4897 Orthotropic material effective laminate properties. Read-only from the API. 4898 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4899 ''' 4900 result = self._Entity.OrthotropicEffectiveLaminate 4901 return OrthotropicEffectiveLaminate(result) if result is not None else None 4902 4903 @property 4904 def OrthotropicEquationCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicEquationCorrectionFactor]: 4905 orthotropicEquationCorrectionFactorsDict = {} 4906 for kvp in self._Entity.OrthotropicEquationCorrectionFactors: 4907 orthotropicEquationCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicEquationCorrectionFactor(kvp.Value) 4908 4909 return orthotropicEquationCorrectionFactorsDict 4910 4911 @property 4912 def OrthotropicTabularCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicTabularCorrectionFactor]: 4913 orthotropicTabularCorrectionFactorsDict = {} 4914 for kvp in self._Entity.OrthotropicTabularCorrectionFactors: 4915 orthotropicTabularCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicTabularCorrectionFactor(kvp.Value) 4916 4917 return orthotropicTabularCorrectionFactorsDict 4918 4919 @MaterialFamilyName.setter 4920 def MaterialFamilyName(self, value: str) -> None: 4921 self._Entity.MaterialFamilyName = value 4922 4923 @Name.setter 4924 def Name(self, value: str) -> None: 4925 self._Entity.Name = value 4926 4927 @Form.setter 4928 def Form(self, value: str) -> None: 4929 self._Entity.Form = value 4930 4931 @Specification.setter 4932 def Specification(self, value: str) -> None: 4933 self._Entity.Specification = value 4934 4935 @Basis.setter 4936 def Basis(self, value: str) -> None: 4937 self._Entity.Basis = value 4938 4939 @Wet.setter 4940 def Wet(self, value: bool) -> None: 4941 self._Entity.Wet = value 4942 4943 @Thickness.setter 4944 def Thickness(self, value: float) -> None: 4945 self._Entity.Thickness = value 4946 4947 @Density.setter 4948 def Density(self, value: float) -> None: 4949 self._Entity.Density = value 4950 4951 @FiberVolume.setter 4952 def FiberVolume(self, value: float) -> None: 4953 self._Entity.FiberVolume = value 4954 4955 @GlassTransition.setter 4956 def GlassTransition(self, value: float) -> None: 4957 self._Entity.GlassTransition = value 4958 4959 @Manufacturer.setter 4960 def Manufacturer(self, value: str) -> None: 4961 self._Entity.Manufacturer = value 4962 4963 @Processes.setter 4964 def Processes(self, value: str) -> None: 4965 self._Entity.Processes = value 4966 4967 @MaterialDescription.setter 4968 def MaterialDescription(self, value: str) -> None: 4969 self._Entity.MaterialDescription = value 4970 4971 @UserNote.setter 4972 def UserNote(self, value: str) -> None: 4973 self._Entity.UserNote = value 4974 4975 @BendingCorrectionFactor.setter 4976 def BendingCorrectionFactor(self, value: float) -> None: 4977 self._Entity.BendingCorrectionFactor = value 4978 4979 @FemMaterialId.setter 4980 def FemMaterialId(self, value: int) -> None: 4981 self._Entity.FemMaterialId = value 4982 4983 @Cost.setter 4984 def Cost(self, value: float) -> None: 4985 self._Entity.Cost = value 4986 4987 @BucklingStiffnessKnockdown.setter 4988 def BucklingStiffnessKnockdown(self, value: float) -> None: 4989 self._Entity.BucklingStiffnessKnockdown = value 4990 4991 def AddTemperatureProperty(self, temperature: float, et1: float, et2: float, vt12: float, ec1: float, ec2: float, vc12: float, g12: float, ftu1: float, ftu2: float, fcu1: float, fcu2: float, fsu12: float, alpha1: float, alpha2: float, etu1: float, etu2: float, ecu1: float, ecu2: float, esu12: float) -> OrthotropicTemperature: 4992 return OrthotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et1, et2, vt12, ec1, ec2, vc12, g12, ftu1, ftu2, fcu1, fcu2, fsu12, alpha1, alpha2, etu1, etu2, ecu1, ecu2, esu12)) 4993 4994 def DeleteTemperatureProperty(self, temperature: float) -> bool: 4995 return self._Entity.DeleteTemperatureProperty(temperature) 4996 4997 def GetTemperature(self, lookupTemperature: float) -> OrthotropicTemperature: 4998 return OrthotropicTemperature(self._Entity.GetTemperature(lookupTemperature)) 4999 5000 def IsEffectiveLaminate(self) -> bool: 5001 ''' 5002 Returns true if this material is an effective laminate. 5003 ''' 5004 return self._Entity.IsEffectiveLaminate() 5005 5006 def HasLaminateAllowable(self, property: types.AllowablePropertyName) -> bool: 5007 return self._Entity.HasLaminateAllowable(_types.AllowablePropertyName(property.value)) 5008 5009 def AddLaminateAllowable(self, property: types.AllowablePropertyName, method: types.AllowableMethodName) -> OrthotropicLaminateAllowable: 5010 return OrthotropicLaminateAllowable(self._Entity.AddLaminateAllowable(_types.AllowablePropertyName(property.value), _types.AllowableMethodName(method.value))) 5011 5012 def GetLaminateAllowable(self, lookupAllowableProperty: types.AllowablePropertyName) -> OrthotropicLaminateAllowable: 5013 return OrthotropicLaminateAllowable(self._Entity.GetLaminateAllowable(_types.AllowablePropertyName(lookupAllowableProperty.value))) 5014 5015 def AddEquationCorrectionFactor(self, propertyId: types.CorrectionProperty, correctionId: types.CorrectionId, equationId: types.CorrectionEquation) -> OrthotropicEquationCorrectionFactor: 5016 return OrthotropicEquationCorrectionFactor(self._Entity.AddEquationCorrectionFactor(_types.CorrectionProperty(propertyId.value), _types.CorrectionId(correctionId.value), _types.CorrectionEquation(equationId.value))) 5017 5018 def GetEquationCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicEquationCorrectionFactor: 5019 return OrthotropicEquationCorrectionFactor(self._Entity.GetEquationCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value))) 5020 5021 def GetTabularCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicTabularCorrectionFactor: 5022 return OrthotropicTabularCorrectionFactor(self._Entity.GetTabularCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value))) 5023 5024 def Save(self) -> None: 5025 ''' 5026 Save any changes to this orthotropic material to the database. 5027 ''' 5028 return self._Entity.Save() 5029 5030 5031class Vector2d: 5032 ''' 5033 Represents a readonly 2D vector. 5034 ''' 5035 def __init__(self, vector2d: _api.Vector2d): 5036 self._Entity = vector2d 5037 5038 def Create_Vector2d(x: float, y: float): 5039 return Vector2d(_api.Vector2d(x, y)) 5040 5041 @property 5042 def X(self) -> float: 5043 return self._Entity.X 5044 5045 @property 5046 def Y(self) -> float: 5047 return self._Entity.Y 5048 5049 @overload 5050 def Equals(self, other) -> bool: ... 5051 5052 @overload 5053 def Equals(self, obj) -> bool: ... 5054 5055 def GetHashCode(self) -> int: 5056 return self._Entity.GetHashCode() 5057 5058 def Equals(self, item1 = None) -> bool: 5059 if isinstance(item1, Vector2d): 5060 return self._Entity.Equals(item1._Entity) 5061 5062 return self._Entity.Equals(item1._Entity) 5063 5064 def __eq__(self, other): 5065 return self.Equals(other) 5066 5067 def __ne__(self, other): 5068 return not self.Equals(other) 5069 5070 5071class ElementSet(IdNameEntity): 5072 ''' 5073 A set of elements defined in the input file. 5074 ''' 5075 def __init__(self, elementSet: _api.ElementSet): 5076 self._Entity = elementSet 5077 5078 @property 5079 def Elements(self) -> ElementCol: 5080 result = self._Entity.Elements 5081 return ElementCol(result) if result is not None else None 5082 5083 5084class FemProperty(IdNameEntity): 5085 ''' 5086 A property description. 5087 ''' 5088 def __init__(self, femProperty: _api.FemProperty): 5089 self._Entity = femProperty 5090 5091 @property 5092 def Elements(self) -> ElementCol: 5093 result = self._Entity.Elements 5094 return ElementCol(result) if result is not None else None 5095 5096 @property 5097 def FemType(self) -> types.FemType: 5098 return types.FemType[self._Entity.FemType.ToString()] 5099 5100 5101class ElementSetCol(IdEntityCol[ElementSet]): 5102 def __init__(self, elementSetCol: _api.ElementSetCol): 5103 self._Entity = elementSetCol 5104 self._CollectedClass = ElementSet 5105 5106 @property 5107 def ElementSetColList(self) -> tuple[ElementSet]: 5108 return tuple([ElementSet(elementSetCol) for elementSetCol in self._Entity]) 5109 5110 def __getitem__(self, index: int): 5111 return self.ElementSetColList[index] 5112 5113 def __iter__(self): 5114 yield from self.ElementSetColList 5115 5116 def __len__(self): 5117 return len(self.ElementSetColList) 5118 5119 5120class FemPropertyCol(IdEntityCol[FemProperty]): 5121 def __init__(self, femPropertyCol: _api.FemPropertyCol): 5122 self._Entity = femPropertyCol 5123 self._CollectedClass = FemProperty 5124 5125 @property 5126 def FemPropertyColList(self) -> tuple[FemProperty]: 5127 return tuple([FemProperty(femPropertyCol) for femPropertyCol in self._Entity]) 5128 5129 def __getitem__(self, index: int): 5130 return self.FemPropertyColList[index] 5131 5132 def __iter__(self): 5133 yield from self.FemPropertyColList 5134 5135 def __len__(self): 5136 return len(self.FemPropertyColList) 5137 5138 5139class FemDataSet: 5140 def __init__(self, femDataSet: _api.FemDataSet): 5141 self._Entity = femDataSet 5142 5143 @property 5144 def FemProperties(self) -> FemPropertyCol: 5145 result = self._Entity.FemProperties 5146 return FemPropertyCol(result) if result is not None else None 5147 5148 @property 5149 def ElementSets(self) -> ElementSetCol: 5150 result = self._Entity.ElementSets 5151 return ElementSetCol(result) if result is not None else None 5152 5153 5154class PluginPackage(IdNameEntity): 5155 def __init__(self, pluginPackage: _api.PluginPackage): 5156 self._Entity = pluginPackage 5157 5158 @property 5159 def FilePath(self) -> str: 5160 return self._Entity.FilePath 5161 5162 @property 5163 def Version(self) -> str: 5164 return self._Entity.Version 5165 5166 @property 5167 def Description(self) -> str: 5168 return self._Entity.Description 5169 5170 @property 5171 def ModificationDate(self) -> DateTime: 5172 return self._Entity.ModificationDate 5173 5174 5175class Ply(IdNameEntity): 5176 def __init__(self, ply: _api.Ply): 5177 self._Entity = ply 5178 5179 @property 5180 def InnerCurves(self) -> list[int]: 5181 return [int32 for int32 in self._Entity.InnerCurves] 5182 5183 @property 5184 def OuterCurves(self) -> list[int]: 5185 return [int32 for int32 in self._Entity.OuterCurves] 5186 5187 @property 5188 def FiberDirectionCurves(self) -> list[int]: 5189 return [int32 for int32 in self._Entity.FiberDirectionCurves] 5190 5191 @property 5192 def Area(self) -> float: 5193 return self._Entity.Area 5194 5195 @property 5196 def Description(self) -> str: 5197 return self._Entity.Description 5198 5199 @property 5200 def Elements(self) -> ElementCol: 5201 result = self._Entity.Elements 5202 return ElementCol(result) if result is not None else None 5203 5204 @property 5205 def MaterialId(self) -> int: 5206 return self._Entity.MaterialId 5207 5208 @property 5209 def Orientation(self) -> int: 5210 return self._Entity.Orientation 5211 5212 @property 5213 def Sequence(self) -> int: 5214 return self._Entity.Sequence 5215 5216 @property 5217 def StructureId(self) -> int: 5218 return self._Entity.StructureId 5219 5220 @property 5221 def Thickness(self) -> float: 5222 return self._Entity.Thickness 5223 5224 5225class Rundeck(IdEntity): 5226 def __init__(self, rundeck: _api.Rundeck): 5227 self._Entity = rundeck 5228 5229 @property 5230 def InputFilePath(self) -> str: 5231 return self._Entity.InputFilePath 5232 5233 @property 5234 def IsPrimary(self) -> bool: 5235 return self._Entity.IsPrimary 5236 5237 @property 5238 def ResultFilePath(self) -> str: 5239 return self._Entity.ResultFilePath 5240 5241 def SetInputFilePath(self, filepath: str) -> RundeckUpdateStatus: 5242 return RundeckUpdateStatus[self._Entity.SetInputFilePath(filepath).ToString()] 5243 5244 def SetResultFilePath(self, filepath: str) -> RundeckUpdateStatus: 5245 return RundeckUpdateStatus[self._Entity.SetResultFilePath(filepath).ToString()] 5246 5247 5248class RundeckPathPair: 5249 def __init__(self, rundeckPathPair: _api.RundeckPathPair): 5250 self._Entity = rundeckPathPair 5251 5252 @property 5253 def InputFilePath(self) -> str: 5254 return self._Entity.InputFilePath 5255 5256 @property 5257 def ResultFilePath(self) -> str: 5258 return self._Entity.ResultFilePath 5259 5260 @InputFilePath.setter 5261 def InputFilePath(self, value: str) -> None: 5262 self._Entity.InputFilePath = value 5263 5264 @ResultFilePath.setter 5265 def ResultFilePath(self, value: str) -> None: 5266 self._Entity.ResultFilePath = value 5267 5268 5269class BeamLoads: 5270 def __init__(self, beamLoads: _api.BeamLoads): 5271 self._Entity = beamLoads 5272 5273 @property 5274 def AxialForce(self) -> float: 5275 return self._Entity.AxialForce 5276 5277 @property 5278 def MomentX(self) -> float: 5279 return self._Entity.MomentX 5280 5281 @property 5282 def MomentY(self) -> float: 5283 return self._Entity.MomentY 5284 5285 @property 5286 def ShearX(self) -> float: 5287 return self._Entity.ShearX 5288 5289 @property 5290 def ShearY(self) -> float: 5291 return self._Entity.ShearY 5292 5293 @property 5294 def Torque(self) -> float: 5295 return self._Entity.Torque 5296 5297 5298class SectionCut(IdNameEntity): 5299 def __init__(self, sectionCut: _api.SectionCut): 5300 self._Entity = sectionCut 5301 5302 @property 5303 def ReferencePoint(self) -> types.SectionCutPropertyLocation: 5304 ''' 5305 Centroid vs Origin 5306 ''' 5307 return types.SectionCutPropertyLocation[self._Entity.ReferencePoint.ToString()] 5308 5309 @property 5310 def HorizontalVector(self) -> Vector3d: 5311 ''' 5312 Represents a readonly 3D vector. 5313 ''' 5314 result = self._Entity.HorizontalVector 5315 return Vector3d(result) if result is not None else None 5316 5317 @property 5318 def NormalVector(self) -> Vector3d: 5319 ''' 5320 Represents a readonly 3D vector. 5321 ''' 5322 result = self._Entity.NormalVector 5323 return Vector3d(result) if result is not None else None 5324 5325 @property 5326 def OriginVector(self) -> Vector3d: 5327 ''' 5328 Represents a readonly 3D vector. 5329 ''' 5330 result = self._Entity.OriginVector 5331 return Vector3d(result) if result is not None else None 5332 5333 @property 5334 def VerticalVector(self) -> Vector3d: 5335 ''' 5336 Represents a readonly 3D vector. 5337 ''' 5338 result = self._Entity.VerticalVector 5339 return Vector3d(result) if result is not None else None 5340 5341 @property 5342 def MaxAngleBound(self) -> float: 5343 return self._Entity.MaxAngleBound 5344 5345 @property 5346 def MinAngleBound(self) -> float: 5347 return self._Entity.MinAngleBound 5348 5349 @property 5350 def MinStiffnessEihh(self) -> float: 5351 return self._Entity.MinStiffnessEihh 5352 5353 @property 5354 def MinStiffnessEivv(self) -> float: 5355 return self._Entity.MinStiffnessEivv 5356 5357 @property 5358 def MinStiffnessGJ(self) -> float: 5359 return self._Entity.MinStiffnessGJ 5360 5361 @property 5362 def ZoneStiffnessDistribution(self) -> float: 5363 return self._Entity.ZoneStiffnessDistribution 5364 5365 @property 5366 def CN_hmax(self) -> float: 5367 return self._Entity.CN_hmax 5368 5369 @property 5370 def CN_hmin(self) -> float: 5371 return self._Entity.CN_hmin 5372 5373 @property 5374 def CN_vmax(self) -> float: 5375 return self._Entity.CN_vmax 5376 5377 @property 5378 def CN_vmin(self) -> float: 5379 return self._Entity.CN_vmin 5380 5381 @property 5382 def CQ_hmax(self) -> float: 5383 return self._Entity.CQ_hmax 5384 5385 @property 5386 def CQ_hmin(self) -> float: 5387 return self._Entity.CQ_hmin 5388 5389 @property 5390 def CQ_vmax(self) -> float: 5391 return self._Entity.CQ_vmax 5392 5393 @property 5394 def CQ_vmin(self) -> float: 5395 return self._Entity.CQ_vmin 5396 5397 @property 5398 def CG(self) -> Vector2d: 5399 ''' 5400 Represents a readonly 2D vector. 5401 ''' 5402 result = self._Entity.CG 5403 return Vector2d(result) if result is not None else None 5404 5405 @property 5406 def CN(self) -> Vector2d: 5407 ''' 5408 Represents a readonly 2D vector. 5409 ''' 5410 result = self._Entity.CN 5411 return Vector2d(result) if result is not None else None 5412 5413 @property 5414 def CQ(self) -> Vector2d: 5415 ''' 5416 Represents a readonly 2D vector. 5417 ''' 5418 result = self._Entity.CQ 5419 return Vector2d(result) if result is not None else None 5420 5421 @property 5422 def EnclosedArea(self) -> float: 5423 return self._Entity.EnclosedArea 5424 5425 @property 5426 def NumberOfCells(self) -> int: 5427 return self._Entity.NumberOfCells 5428 5429 @property 5430 def EIhh(self) -> float: 5431 return self._Entity.EIhh 5432 5433 @property 5434 def EIhv(self) -> float: 5435 return self._Entity.EIhv 5436 5437 @property 5438 def EIvv(self) -> float: 5439 return self._Entity.EIvv 5440 5441 @property 5442 def GJ(self) -> float: 5443 return self._Entity.GJ 5444 5445 @property 5446 def EA(self) -> float: 5447 return self._Entity.EA 5448 5449 @property 5450 def EImax(self) -> float: 5451 return self._Entity.EImax 5452 5453 @property 5454 def EImin(self) -> float: 5455 return self._Entity.EImin 5456 5457 @property 5458 def PrincipalAngle(self) -> float: 5459 return self._Entity.PrincipalAngle 5460 5461 @property 5462 def Elements(self) -> ElementCol: 5463 result = self._Entity.Elements 5464 return ElementCol(result) if result is not None else None 5465 5466 @property 5467 def PlateElements(self) -> ElementCol: 5468 result = self._Entity.PlateElements 5469 return ElementCol(result) if result is not None else None 5470 5471 @property 5472 def BeamElements(self) -> ElementCol: 5473 result = self._Entity.BeamElements 5474 return ElementCol(result) if result is not None else None 5475 5476 @ReferencePoint.setter 5477 def ReferencePoint(self, value: types.SectionCutPropertyLocation) -> None: 5478 self._Entity.ReferencePoint = _types.SectionCutPropertyLocation(value.value) 5479 5480 @MaxAngleBound.setter 5481 def MaxAngleBound(self, value: float) -> None: 5482 self._Entity.MaxAngleBound = value 5483 5484 @MinAngleBound.setter 5485 def MinAngleBound(self, value: float) -> None: 5486 self._Entity.MinAngleBound = value 5487 5488 @MinStiffnessEihh.setter 5489 def MinStiffnessEihh(self, value: float) -> None: 5490 self._Entity.MinStiffnessEihh = value 5491 5492 @MinStiffnessEivv.setter 5493 def MinStiffnessEivv(self, value: float) -> None: 5494 self._Entity.MinStiffnessEivv = value 5495 5496 @MinStiffnessGJ.setter 5497 def MinStiffnessGJ(self, value: float) -> None: 5498 self._Entity.MinStiffnessGJ = value 5499 5500 @ZoneStiffnessDistribution.setter 5501 def ZoneStiffnessDistribution(self, value: float) -> None: 5502 self._Entity.ZoneStiffnessDistribution = value 5503 5504 @CN_hmax.setter 5505 def CN_hmax(self, value: float) -> None: 5506 self._Entity.CN_hmax = value 5507 5508 @CN_hmin.setter 5509 def CN_hmin(self, value: float) -> None: 5510 self._Entity.CN_hmin = value 5511 5512 @CN_vmax.setter 5513 def CN_vmax(self, value: float) -> None: 5514 self._Entity.CN_vmax = value 5515 5516 @CN_vmin.setter 5517 def CN_vmin(self, value: float) -> None: 5518 self._Entity.CN_vmin = value 5519 5520 @CQ_hmax.setter 5521 def CQ_hmax(self, value: float) -> None: 5522 self._Entity.CQ_hmax = value 5523 5524 @CQ_hmin.setter 5525 def CQ_hmin(self, value: float) -> None: 5526 self._Entity.CQ_hmin = value 5527 5528 @CQ_vmax.setter 5529 def CQ_vmax(self, value: float) -> None: 5530 self._Entity.CQ_vmax = value 5531 5532 @CQ_vmin.setter 5533 def CQ_vmin(self, value: float) -> None: 5534 self._Entity.CQ_vmin = value 5535 5536 def AlignToHorizontalPrincipalAxes(self) -> None: 5537 ''' 5538 Set this Section Cut's horizontal vector to be equal to its principal axis horizontal vector. 5539 ''' 5540 return self._Entity.AlignToHorizontalPrincipalAxes() 5541 5542 def AlignToVerticalPrincipalAxes(self) -> None: 5543 ''' 5544 Set this Section Cut's horizontal vector to be equal to its principal axis vertical vector. 5545 ''' 5546 return self._Entity.AlignToVerticalPrincipalAxes() 5547 5548 def SetHorizontalVector(self, vector: Vector3d) -> None: 5549 return self._Entity.SetHorizontalVector(vector._Entity) 5550 5551 def SetNormalVector(self, vector: Vector3d) -> None: 5552 return self._Entity.SetNormalVector(vector._Entity) 5553 5554 def SetOrigin(self, vector: Vector3d) -> None: 5555 return self._Entity.SetOrigin(vector._Entity) 5556 5557 def GetBeamLoads(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> BeamLoads: 5558 return BeamLoads(self._Entity.GetBeamLoads(loadCaseId, _types.LoadSubCaseFactor(factor.value))) 5559 5560 def InclinationAngle(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5561 return self._Entity.InclinationAngle(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5562 5563 def HorizontalIntercept(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5564 return self._Entity.HorizontalIntercept(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5565 5566 def VerticalIntercept(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5567 return self._Entity.VerticalIntercept(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5568 5569 def SetElements(self, elements: list[int]) -> bool: 5570 elementsList = MakeCSharpIntList(elements) 5571 return self._Entity.SetElements(elementsList) 5572 5573 def SetElementsByIntersection(self) -> None: 5574 return self._Entity.SetElementsByIntersection() 5575 5576 5577class Set(ZoneJointContainer): 5578 def __init__(self, set: _api.Set): 5579 self._Entity = set 5580 5581 @property 5582 def Joints(self) -> JointCol: 5583 result = self._Entity.Joints 5584 return JointCol(result) if result is not None else None 5585 5586 @property 5587 def PanelSegments(self) -> PanelSegmentCol: 5588 result = self._Entity.PanelSegments 5589 return PanelSegmentCol(result) if result is not None else None 5590 5591 @property 5592 def Zones(self) -> ZoneCol: 5593 result = self._Entity.Zones 5594 return ZoneCol(result) if result is not None else None 5595 5596 @overload 5597 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5598 5599 @overload 5600 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5601 5602 @overload 5603 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 5604 5605 @overload 5606 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 5607 5608 @overload 5609 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 5610 5611 @overload 5612 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 5613 5614 @overload 5615 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 5616 5617 @overload 5618 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 5619 5620 @overload 5621 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5622 5623 @overload 5624 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 5625 5626 @overload 5627 def AddZone(self, id: int) -> CollectionModificationStatus: ... 5628 5629 @overload 5630 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 5631 5632 @overload 5633 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 5634 5635 @overload 5636 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 5637 5638 @overload 5639 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 5640 5641 @overload 5642 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 5643 5644 @overload 5645 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 5646 5647 @overload 5648 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 5649 5650 @overload 5651 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5652 5653 @overload 5654 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 5655 5656 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5657 if isinstance(item1, Joint): 5658 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5659 5660 if isinstance(item1, int): 5661 return CollectionModificationStatus(super().AddJoint(item1)) 5662 5663 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5664 5665 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5666 if isinstance(item1, PanelSegment): 5667 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5668 5669 if isinstance(item1, int): 5670 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5671 5672 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5673 5674 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5675 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 5676 zonesList = List[_api.Zone]() 5677 if item1 is not None: 5678 for thing in item1: 5679 if thing is not None: 5680 zonesList.Add(thing._Entity) 5681 zonesEnumerable = IEnumerable(zonesList) 5682 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5683 5684 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5685 return CollectionModificationStatus(super().AddZones(item1)) 5686 5687 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()] 5688 5689 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5690 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5691 jointIdsList = MakeCSharpIntList(item1) 5692 jointIdsEnumerable = IEnumerable(jointIdsList) 5693 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5694 5695 if isinstance(item1, JointCol): 5696 return CollectionModificationStatus(super().RemoveJoints(item1)) 5697 5698 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()] 5699 5700 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5701 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5702 segmentIdsList = MakeCSharpIntList(item1) 5703 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5704 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5705 5706 if isinstance(item1, PanelSegmentCol): 5707 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5708 5709 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()] 5710 5711 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5712 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5713 zoneIdsList = MakeCSharpIntList(item1) 5714 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5715 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5716 5717 if isinstance(item1, ZoneCol): 5718 return CollectionModificationStatus(super().RemoveZones(item1)) 5719 5720 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()] 5721 5722 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5723 if isinstance(item1, int): 5724 return CollectionModificationStatus(super().RemoveJoint(item1)) 5725 5726 if isinstance(item1, Joint): 5727 return CollectionModificationStatus(super().RemoveJoint(item1)) 5728 5729 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 5730 5731 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5732 if isinstance(item1, int): 5733 return CollectionModificationStatus(super().AddZone(item1)) 5734 5735 if isinstance(item1, Zone): 5736 return CollectionModificationStatus(super().AddZone(item1)) 5737 5738 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 5739 5740 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5741 if isinstance(item1, int): 5742 return CollectionModificationStatus(super().RemoveZone(item1)) 5743 5744 if isinstance(item1, Zone): 5745 return CollectionModificationStatus(super().RemoveZone(item1)) 5746 5747 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 5748 5749 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 5750 if isinstance(item1, int): 5751 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5752 5753 if isinstance(item1, PanelSegment): 5754 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5755 5756 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 5757 5758 5759class PlyCol(IdNameEntityCol[Ply]): 5760 def __init__(self, plyCol: _api.PlyCol): 5761 self._Entity = plyCol 5762 self._CollectedClass = Ply 5763 5764 @property 5765 def PlyColList(self) -> tuple[Ply]: 5766 return tuple([Ply(plyCol) for plyCol in self._Entity]) 5767 5768 def Delete(self, id: int) -> CollectionModificationStatus: 5769 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 5770 5771 def DeleteAll(self) -> None: 5772 ''' 5773 Delete all plies in the collection. 5774 ''' 5775 return self._Entity.DeleteAll() 5776 5777 def ExportToCSV(self, filepath: str) -> None: 5778 return self._Entity.ExportToCSV(filepath) 5779 5780 def ImportCSV(self, filepath: str) -> None: 5781 return self._Entity.ImportCSV(filepath) 5782 5783 @overload 5784 def Get(self, name: str) -> Ply: ... 5785 5786 @overload 5787 def Get(self, id: int) -> Ply: ... 5788 5789 def Get(self, item1 = None) -> Ply: 5790 if isinstance(item1, str): 5791 return Ply(super().Get(item1)) 5792 5793 if isinstance(item1, int): 5794 return Ply(super().Get(item1)) 5795 5796 return Ply(self._Entity.Get(item1)) 5797 5798 def __getitem__(self, index: int): 5799 return self.PlyColList[index] 5800 5801 def __iter__(self): 5802 yield from self.PlyColList 5803 5804 def __len__(self): 5805 return len(self.PlyColList) 5806 5807 5808class Structure(ZoneJointContainer): 5809 def __init__(self, structure: _api.Structure): 5810 self._Entity = structure 5811 5812 @property 5813 def Plies(self) -> PlyCol: 5814 result = self._Entity.Plies 5815 return PlyCol(result) if result is not None else None 5816 5817 @property 5818 def Joints(self) -> JointCol: 5819 result = self._Entity.Joints 5820 return JointCol(result) if result is not None else None 5821 5822 @property 5823 def PanelSegments(self) -> PanelSegmentCol: 5824 result = self._Entity.PanelSegments 5825 return PanelSegmentCol(result) if result is not None else None 5826 5827 @property 5828 def Zones(self) -> ZoneCol: 5829 result = self._Entity.Zones 5830 return ZoneCol(result) if result is not None else None 5831 5832 def ExportVCP(self, fileName: str) -> None: 5833 return self._Entity.ExportVCP(fileName) 5834 5835 def AddElements(self, elementIds: tuple[int]) -> CollectionModificationStatus: 5836 elementIdsList = MakeCSharpIntList(elementIds) 5837 elementIdsEnumerable = IEnumerable(elementIdsList) 5838 return CollectionModificationStatus[self._Entity.AddElements(elementIdsEnumerable).ToString()] 5839 5840 @overload 5841 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5842 5843 @overload 5844 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5845 5846 def AddPfemProperties(self, pfemPropertyIds: tuple[int]) -> CollectionModificationStatus: 5847 pfemPropertyIdsList = MakeCSharpIntList(pfemPropertyIds) 5848 pfemPropertyIdsEnumerable = IEnumerable(pfemPropertyIdsList) 5849 return CollectionModificationStatus[self._Entity.AddPfemProperties(pfemPropertyIdsEnumerable).ToString()] 5850 5851 @overload 5852 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 5853 5854 def CreateZone(self, elementIds: tuple[int], name: str = None) -> Zone: 5855 elementIdsList = MakeCSharpIntList(elementIds) 5856 elementIdsEnumerable = IEnumerable(elementIdsList) 5857 result = self._Entity.CreateZone(elementIdsEnumerable, name) 5858 thisClass = type(result).__name__ 5859 givenClass = Zone 5860 for subclass in Zone.__subclasses__(): 5861 if subclass.__name__ == thisClass: 5862 givenClass = subclass 5863 return givenClass(result) 5864 5865 def CreatePanelSegment(self, discreteTechnique: types.DiscreteTechnique, discreteElementLkp: dict[types.DiscreteDefinitionType, list[int]], name: str = None) -> PanelSegment: 5866 discreteElementLkpDict = Dictionary[_types.DiscreteDefinitionType, List[int]]() 5867 for kvp in discreteElementLkp: 5868 discreteElementLkpDict.Add(_types.DiscreteDefinitionType(kvp.value), MakeCSharpIntList(discreteElementLkp[kvp])) 5869 return PanelSegment(self._Entity.CreatePanelSegment(_types.DiscreteTechnique(discreteTechnique.value), discreteElementLkpDict, name)) 5870 5871 @overload 5872 def Remove(self, zoneIds: tuple[int], jointIds: tuple[int]) -> CollectionModificationStatus: ... 5873 5874 @overload 5875 def Remove(self, zoneIds: tuple[int], jointIds: tuple[int], panelSegmentIds: tuple[int]) -> CollectionModificationStatus: ... 5876 5877 @overload 5878 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 5879 5880 @overload 5881 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 5882 5883 @overload 5884 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 5885 5886 @overload 5887 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 5888 5889 @overload 5890 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 5891 5892 @overload 5893 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5894 5895 @overload 5896 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 5897 5898 @overload 5899 def AddZone(self, id: int) -> CollectionModificationStatus: ... 5900 5901 @overload 5902 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 5903 5904 @overload 5905 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 5906 5907 @overload 5908 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 5909 5910 @overload 5911 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 5912 5913 @overload 5914 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 5915 5916 @overload 5917 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 5918 5919 @overload 5920 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 5921 5922 @overload 5923 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5924 5925 @overload 5926 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 5927 5928 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5929 if isinstance(item1, Joint): 5930 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5931 5932 if isinstance(item1, int): 5933 return CollectionModificationStatus(super().AddJoint(item1)) 5934 5935 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5936 5937 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5938 if isinstance(item1, PanelSegment): 5939 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5940 5941 if isinstance(item1, int): 5942 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5943 5944 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5945 5946 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5947 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 5948 zonesList = List[_api.Zone]() 5949 if item1 is not None: 5950 for thing in item1: 5951 if thing is not None: 5952 zonesList.Add(thing._Entity) 5953 zonesEnumerable = IEnumerable(zonesList) 5954 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5955 5956 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5957 return CollectionModificationStatus(super().AddZones(item1)) 5958 5959 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()] 5960 5961 def Remove(self, item1 = None, item2 = None, item3 = None) -> CollectionModificationStatus: 5962 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, tuple) and item2 and isinstance(item2[0], int) and isinstance(item3, tuple) and item3 and isinstance(item3[0], int): 5963 zoneIdsList = MakeCSharpIntList(item1) 5964 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5965 jointIdsList = MakeCSharpIntList(item2) 5966 jointIdsEnumerable = IEnumerable(jointIdsList) 5967 panelSegmentIdsList = MakeCSharpIntList(item3) 5968 panelSegmentIdsEnumerable = IEnumerable(panelSegmentIdsList) 5969 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable, panelSegmentIdsEnumerable).ToString()] 5970 5971 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, tuple) and item2 and isinstance(item2[0], int): 5972 zoneIdsList = MakeCSharpIntList(item1) 5973 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5974 jointIdsList = MakeCSharpIntList(item2) 5975 jointIdsEnumerable = IEnumerable(jointIdsList) 5976 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable).ToString()] 5977 5978 return CollectionModificationStatus[self._Entity.Remove(item1, item2, item3).ToString()] 5979 5980 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5981 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5982 jointIdsList = MakeCSharpIntList(item1) 5983 jointIdsEnumerable = IEnumerable(jointIdsList) 5984 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5985 5986 if isinstance(item1, JointCol): 5987 return CollectionModificationStatus(super().RemoveJoints(item1)) 5988 5989 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()] 5990 5991 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5992 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5993 segmentIdsList = MakeCSharpIntList(item1) 5994 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5995 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5996 5997 if isinstance(item1, PanelSegmentCol): 5998 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5999 6000 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()] 6001 6002 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 6003 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 6004 zoneIdsList = MakeCSharpIntList(item1) 6005 zoneIdsEnumerable = IEnumerable(zoneIdsList) 6006 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 6007 6008 if isinstance(item1, ZoneCol): 6009 return CollectionModificationStatus(super().RemoveZones(item1)) 6010 6011 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()] 6012 6013 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 6014 if isinstance(item1, int): 6015 return CollectionModificationStatus(super().RemoveJoint(item1)) 6016 6017 if isinstance(item1, Joint): 6018 return CollectionModificationStatus(super().RemoveJoint(item1)) 6019 6020 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 6021 6022 def AddZone(self, item1 = None) -> CollectionModificationStatus: 6023 if isinstance(item1, int): 6024 return CollectionModificationStatus(super().AddZone(item1)) 6025 6026 if isinstance(item1, Zone): 6027 return CollectionModificationStatus(super().AddZone(item1)) 6028 6029 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 6030 6031 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 6032 if isinstance(item1, int): 6033 return CollectionModificationStatus(super().RemoveZone(item1)) 6034 6035 if isinstance(item1, Zone): 6036 return CollectionModificationStatus(super().RemoveZone(item1)) 6037 6038 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 6039 6040 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 6041 if isinstance(item1, int): 6042 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6043 6044 if isinstance(item1, PanelSegment): 6045 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6046 6047 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 6048 6049 6050class AnalysisPropertyCol(IdNameEntityCol[AnalysisProperty]): 6051 def __init__(self, analysisPropertyCol: _api.AnalysisPropertyCol): 6052 self._Entity = analysisPropertyCol 6053 self._CollectedClass = AnalysisProperty 6054 6055 @property 6056 def AnalysisPropertyColList(self) -> tuple[AnalysisProperty]: 6057 return tuple([AnalysisProperty(analysisPropertyCol) for analysisPropertyCol in self._Entity]) 6058 6059 def CreateAnalysisProperty(self, type: types.FamilyCategory, name: str = None) -> AnalysisProperty: 6060 return AnalysisProperty(self._Entity.CreateAnalysisProperty(_types.FamilyCategory(type.value), name)) 6061 6062 @overload 6063 def DeleteAnalysisProperty(self, name: str) -> bool: ... 6064 6065 @overload 6066 def DeleteAnalysisProperty(self, id: int) -> bool: ... 6067 6068 @overload 6069 def Get(self, name: str) -> AnalysisProperty: ... 6070 6071 @overload 6072 def Get(self, id: int) -> AnalysisProperty: ... 6073 6074 def DeleteAnalysisProperty(self, item1 = None) -> bool: 6075 if isinstance(item1, str): 6076 return self._Entity.DeleteAnalysisProperty(item1) 6077 6078 if isinstance(item1, int): 6079 return self._Entity.DeleteAnalysisProperty(item1) 6080 6081 return self._Entity.DeleteAnalysisProperty(item1) 6082 6083 def Get(self, item1 = None) -> AnalysisProperty: 6084 if isinstance(item1, str): 6085 return AnalysisProperty(super().Get(item1)) 6086 6087 if isinstance(item1, int): 6088 return AnalysisProperty(super().Get(item1)) 6089 6090 return AnalysisProperty(self._Entity.Get(item1)) 6091 6092 def __getitem__(self, index: int): 6093 return self.AnalysisPropertyColList[index] 6094 6095 def __iter__(self): 6096 yield from self.AnalysisPropertyColList 6097 6098 def __len__(self): 6099 return len(self.AnalysisPropertyColList) 6100 6101 6102class DesignPropertyCol(IdNameEntityCol[DesignProperty]): 6103 def __init__(self, designPropertyCol: _api.DesignPropertyCol): 6104 self._Entity = designPropertyCol 6105 self._CollectedClass = DesignProperty 6106 6107 @property 6108 def DesignPropertyColList(self) -> tuple[DesignProperty]: 6109 return tuple([DesignProperty(designPropertyCol) for designPropertyCol in self._Entity]) 6110 6111 def CreateDesignProperty(self, familyConcept: types.FamilyConceptUID, materialMode: types.MaterialMode = types.MaterialMode.Any, name: str = None) -> DesignProperty: 6112 result = self._Entity.CreateDesignProperty(_types.FamilyConceptUID(familyConcept.value), _types.MaterialMode(materialMode.value), name) 6113 thisClass = type(result).__name__ 6114 givenClass = DesignProperty 6115 for subclass in DesignProperty.__subclasses__(): 6116 if subclass.__name__ == thisClass: 6117 givenClass = subclass 6118 return givenClass(result) 6119 6120 @overload 6121 def Get(self, name: str) -> DesignProperty: ... 6122 6123 @overload 6124 def Get(self, id: int) -> DesignProperty: ... 6125 6126 def Get(self, item1 = None) -> DesignProperty: 6127 if isinstance(item1, str): 6128 return DesignProperty(super().Get(item1)) 6129 6130 if isinstance(item1, int): 6131 return DesignProperty(super().Get(item1)) 6132 6133 result = self._Entity.Get(item1) 6134 thisClass = type(result).__name__ 6135 givenClass = DesignProperty 6136 for subclass in DesignProperty.__subclasses__(): 6137 if subclass.__name__ == thisClass: 6138 givenClass = subclass 6139 return givenClass(result) 6140 6141 def __getitem__(self, index: int): 6142 return self.DesignPropertyColList[index] 6143 6144 def __iter__(self): 6145 yield from self.DesignPropertyColList 6146 6147 def __len__(self): 6148 return len(self.DesignPropertyColList) 6149 6150 6151class LoadPropertyCol(IdNameEntityCol[LoadProperty]): 6152 def __init__(self, loadPropertyCol: _api.LoadPropertyCol): 6153 self._Entity = loadPropertyCol 6154 self._CollectedClass = LoadProperty 6155 6156 @property 6157 def LoadPropertyColList(self) -> tuple[LoadProperty]: 6158 return tuple([LoadProperty(loadPropertyCol) for loadPropertyCol in self._Entity]) 6159 6160 def CreateLoadProperty(self, loadPropertyType: types.LoadPropertyType, category: types.FamilyCategory, name: str = None) -> LoadProperty: 6161 result = self._Entity.CreateLoadProperty(_types.LoadPropertyType(loadPropertyType.value), _types.FamilyCategory(category.value), name) 6162 thisClass = type(result).__name__ 6163 givenClass = LoadProperty 6164 for subclass in LoadProperty.__subclasses__(): 6165 if subclass.__name__ == thisClass: 6166 givenClass = subclass 6167 return givenClass(result) 6168 6169 @overload 6170 def DeleteLoadProperty(self, id: int) -> bool: ... 6171 6172 @overload 6173 def DeleteLoadProperty(self, name: str) -> bool: ... 6174 6175 @overload 6176 def Get(self, name: str) -> LoadProperty: ... 6177 6178 @overload 6179 def Get(self, id: int) -> LoadProperty: ... 6180 6181 def DeleteLoadProperty(self, item1 = None) -> bool: 6182 if isinstance(item1, int): 6183 return self._Entity.DeleteLoadProperty(item1) 6184 6185 if isinstance(item1, str): 6186 return self._Entity.DeleteLoadProperty(item1) 6187 6188 return self._Entity.DeleteLoadProperty(item1) 6189 6190 def Get(self, item1 = None) -> LoadProperty: 6191 if isinstance(item1, str): 6192 return LoadProperty(super().Get(item1)) 6193 6194 if isinstance(item1, int): 6195 return LoadProperty(super().Get(item1)) 6196 6197 result = self._Entity.Get(item1) 6198 thisClass = type(result).__name__ 6199 givenClass = LoadProperty 6200 for subclass in LoadProperty.__subclasses__(): 6201 if subclass.__name__ == thisClass: 6202 givenClass = subclass 6203 return givenClass(result) 6204 6205 def __getitem__(self, index: int): 6206 return self.LoadPropertyColList[index] 6207 6208 def __iter__(self): 6209 yield from self.LoadPropertyColList 6210 6211 def __len__(self): 6212 return len(self.LoadPropertyColList) 6213 6214 6215class DesignLoadCol(IdNameEntityCol[DesignLoad]): 6216 def __init__(self, designLoadCol: _api.DesignLoadCol): 6217 self._Entity = designLoadCol 6218 self._CollectedClass = DesignLoad 6219 6220 @property 6221 def DesignLoadColList(self) -> tuple[DesignLoad]: 6222 return tuple([DesignLoad(designLoadCol) for designLoadCol in self._Entity]) 6223 6224 @overload 6225 def Get(self, name: str) -> DesignLoad: ... 6226 6227 @overload 6228 def Get(self, id: int) -> DesignLoad: ... 6229 6230 def Get(self, item1 = None) -> DesignLoad: 6231 if isinstance(item1, str): 6232 return DesignLoad(super().Get(item1)) 6233 6234 if isinstance(item1, int): 6235 return DesignLoad(super().Get(item1)) 6236 6237 return DesignLoad(self._Entity.Get(item1)) 6238 6239 def __getitem__(self, index: int): 6240 return self.DesignLoadColList[index] 6241 6242 def __iter__(self): 6243 yield from self.DesignLoadColList 6244 6245 def __len__(self): 6246 return len(self.DesignLoadColList) 6247 6248 6249class DiscreteFieldCol(IdNameEntityCol[DiscreteField]): 6250 def __init__(self, discreteFieldCol: _api.DiscreteFieldCol): 6251 self._Entity = discreteFieldCol 6252 self._CollectedClass = DiscreteField 6253 6254 @property 6255 def DiscreteFieldColList(self) -> tuple[DiscreteField]: 6256 return tuple([DiscreteField(discreteFieldCol) for discreteFieldCol in self._Entity]) 6257 6258 def Create(self, entityType: types.DiscreteFieldPhysicalEntityType, dataType: types.DiscreteFieldDataType, name: str = None) -> DiscreteField: 6259 return DiscreteField(self._Entity.Create(_types.DiscreteFieldPhysicalEntityType(entityType.value), _types.DiscreteFieldDataType(dataType.value), name)) 6260 6261 def CreateFromVCP(self, filepath: str) -> list[DiscreteField]: 6262 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateFromVCP(filepath)] 6263 6264 def Delete(self, id: int) -> CollectionModificationStatus: 6265 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 6266 6267 def CreateByPointMapToElements(self, elementIds: list[int], discreteFieldIds: list[int], suffix: str = None, tolerance: float = None) -> list[DiscreteField]: 6268 elementIdsList = MakeCSharpIntList(elementIds) 6269 discreteFieldIdsList = MakeCSharpIntList(discreteFieldIds) 6270 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateByPointMapToElements(elementIdsList, discreteFieldIdsList, suffix, tolerance)] 6271 6272 @overload 6273 def Get(self, name: str) -> DiscreteField: ... 6274 6275 @overload 6276 def Get(self, id: int) -> DiscreteField: ... 6277 6278 def Get(self, item1 = None) -> DiscreteField: 6279 if isinstance(item1, str): 6280 return DiscreteField(super().Get(item1)) 6281 6282 if isinstance(item1, int): 6283 return DiscreteField(super().Get(item1)) 6284 6285 return DiscreteField(self._Entity.Get(item1)) 6286 6287 def __getitem__(self, index: int): 6288 return self.DiscreteFieldColList[index] 6289 6290 def __iter__(self): 6291 yield from self.DiscreteFieldColList 6292 6293 def __len__(self): 6294 return len(self.DiscreteFieldColList) 6295 6296 6297class ZoneJointContainerCol(IdNameEntityCol, Generic[T]): 6298 def __init__(self, zoneJointContainerCol: _api.ZoneJointContainerCol): 6299 self._Entity = zoneJointContainerCol 6300 self._CollectedClass = T 6301 6302 @property 6303 def ZoneJointContainerColList(self) -> tuple[T]: 6304 if self._Entity.Count() <= 0: 6305 return () 6306 thisClass = type(self._Entity._items[0]).__name__ 6307 givenClass = T 6308 for subclass in T.__subclasses__(): 6309 if subclass.__name__ == thisClass: 6310 givenClass = subclass 6311 return tuple([givenClass(zoneJointContainerCol) for zoneJointContainerCol in self._Entity]) 6312 6313 @abstractmethod 6314 def Create(self, name: str) -> T: 6315 return self._Entity.Create(name) 6316 6317 @overload 6318 def Get(self, name: str) -> T: ... 6319 6320 @overload 6321 def Get(self, id: int) -> T: ... 6322 6323 def Get(self, item1 = None) -> T: 6324 if isinstance(item1, str): 6325 return super().Get(item1) 6326 6327 if isinstance(item1, int): 6328 return super().Get(item1) 6329 6330 return self._Entity.Get(item1) 6331 6332 def __getitem__(self, index: int): 6333 return self.ZoneJointContainerColList[index] 6334 6335 def __iter__(self): 6336 yield from self.ZoneJointContainerColList 6337 6338 def __len__(self): 6339 return len(self.ZoneJointContainerColList) 6340 6341 6342class RundeckCol(IdEntityCol[Rundeck]): 6343 def __init__(self, rundeckCol: _api.RundeckCol): 6344 self._Entity = rundeckCol 6345 self._CollectedClass = Rundeck 6346 6347 @property 6348 def RundeckColList(self) -> tuple[Rundeck]: 6349 return tuple([Rundeck(rundeckCol) for rundeckCol in self._Entity]) 6350 6351 def AddRundeck(self, inputPath: str, resultPath: str = None) -> Rundeck: 6352 return Rundeck(self._Entity.AddRundeck(inputPath, resultPath)) 6353 6354 def ReassignPrimary(self, id: int) -> RundeckUpdateStatus: 6355 return RundeckUpdateStatus[self._Entity.ReassignPrimary(id).ToString()] 6356 6357 def RemoveRundeck(self, id: int) -> RundeckRemoveStatus: 6358 return RundeckRemoveStatus[self._Entity.RemoveRundeck(id).ToString()] 6359 6360 def UpdateAllRundecks(self, newPaths: list[RundeckPathPair]) -> RundeckBulkUpdateStatus: 6361 newPathsList = List[_api.RundeckPathPair]() 6362 if newPaths is not None: 6363 for thing in newPaths: 6364 if thing is not None: 6365 newPathsList.Add(thing._Entity) 6366 return RundeckBulkUpdateStatus[self._Entity.UpdateAllRundecks(newPathsList).ToString()] 6367 6368 def GetRundeckPathSetters(self) -> list[RundeckPathPair]: 6369 ''' 6370 Get RundeckPathSetters to be edited and input to UpdateAllRundecks. 6371 ''' 6372 return [RundeckPathPair(rundeckPathPair) for rundeckPathPair in self._Entity.GetRundeckPathSetters()] 6373 6374 def ReplaceStringInAllPaths(self, stringToReplace: str, newString: str) -> RundeckBulkUpdateStatus: 6375 return RundeckBulkUpdateStatus[self._Entity.ReplaceStringInAllPaths(stringToReplace, newString).ToString()] 6376 6377 def __getitem__(self, index: int): 6378 return self.RundeckColList[index] 6379 6380 def __iter__(self): 6381 yield from self.RundeckColList 6382 6383 def __len__(self): 6384 return len(self.RundeckColList) 6385 6386 6387class SectionCutCol(IdNameEntityCol[SectionCut]): 6388 def __init__(self, sectionCutCol: _api.SectionCutCol): 6389 self._Entity = sectionCutCol 6390 self._CollectedClass = SectionCut 6391 6392 @property 6393 def SectionCutColList(self) -> tuple[SectionCut]: 6394 return tuple([SectionCut(sectionCutCol) for sectionCutCol in self._Entity]) 6395 6396 def Create(self, origin: Vector3d, normal: Vector3d, horizontal: Vector3d, name: str = None) -> SectionCut: 6397 return SectionCut(self._Entity.Create(origin._Entity, normal._Entity, horizontal._Entity, name)) 6398 6399 def Delete(self, id: int) -> CollectionModificationStatus: 6400 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 6401 6402 @overload 6403 def Get(self, name: str) -> SectionCut: ... 6404 6405 @overload 6406 def Get(self, id: int) -> SectionCut: ... 6407 6408 def Get(self, item1 = None) -> SectionCut: 6409 if isinstance(item1, str): 6410 return SectionCut(super().Get(item1)) 6411 6412 if isinstance(item1, int): 6413 return SectionCut(super().Get(item1)) 6414 6415 return SectionCut(self._Entity.Get(item1)) 6416 6417 def __getitem__(self, index: int): 6418 return self.SectionCutColList[index] 6419 6420 def __iter__(self): 6421 yield from self.SectionCutColList 6422 6423 def __len__(self): 6424 return len(self.SectionCutColList) 6425 6426 6427class SetCol(ZoneJointContainerCol[Set]): 6428 def __init__(self, setCol: _api.SetCol): 6429 self._Entity = setCol 6430 self._CollectedClass = Set 6431 6432 @property 6433 def SetColList(self) -> tuple[Set]: 6434 return tuple([Set(setCol) for setCol in self._Entity]) 6435 6436 def Create(self, name: str = None) -> Set: 6437 return Set(self._Entity.Create(name)) 6438 6439 @overload 6440 def Get(self, name: str) -> Set: ... 6441 6442 @overload 6443 def Get(self, id: int) -> Set: ... 6444 6445 def Get(self, item1 = None) -> Set: 6446 if isinstance(item1, str): 6447 return Set(super().Get(item1)) 6448 6449 if isinstance(item1, int): 6450 return Set(super().Get(item1)) 6451 6452 return Set(self._Entity.Get(item1)) 6453 6454 def __getitem__(self, index: int): 6455 return self.SetColList[index] 6456 6457 def __iter__(self): 6458 yield from self.SetColList 6459 6460 def __len__(self): 6461 return len(self.SetColList) 6462 6463 6464class StructureCol(ZoneJointContainerCol[Structure]): 6465 def __init__(self, structureCol: _api.StructureCol): 6466 self._Entity = structureCol 6467 self._CollectedClass = Structure 6468 6469 @property 6470 def StructureColList(self) -> tuple[Structure]: 6471 return tuple([Structure(structureCol) for structureCol in self._Entity]) 6472 6473 def Create(self, name: str = None) -> Structure: 6474 return Structure(self._Entity.Create(name)) 6475 6476 @overload 6477 def DeleteStructure(self, structure: Structure) -> bool: ... 6478 6479 @overload 6480 def DeleteStructure(self, name: str) -> bool: ... 6481 6482 @overload 6483 def DeleteStructure(self, id: int) -> bool: ... 6484 6485 @overload 6486 def Get(self, name: str) -> Structure: ... 6487 6488 @overload 6489 def Get(self, id: int) -> Structure: ... 6490 6491 def DeleteStructure(self, item1 = None) -> bool: 6492 if isinstance(item1, Structure): 6493 return self._Entity.DeleteStructure(item1._Entity) 6494 6495 if isinstance(item1, str): 6496 return self._Entity.DeleteStructure(item1) 6497 6498 if isinstance(item1, int): 6499 return self._Entity.DeleteStructure(item1) 6500 6501 return self._Entity.DeleteStructure(item1._Entity) 6502 6503 def Get(self, item1 = None) -> Structure: 6504 if isinstance(item1, str): 6505 return Structure(super().Get(item1)) 6506 6507 if isinstance(item1, int): 6508 return Structure(super().Get(item1)) 6509 6510 return Structure(self._Entity.Get(item1)) 6511 6512 def __getitem__(self, index: int): 6513 return self.StructureColList[index] 6514 6515 def __iter__(self): 6516 yield from self.StructureColList 6517 6518 def __len__(self): 6519 return len(self.StructureColList) 6520 6521 6522class Project: 6523 ''' 6524 Represents a HyperX project within a database. 6525 ''' 6526 def __init__(self, project: _api.Project): 6527 self._Entity = project 6528 6529 @property 6530 def HyperFea(self) -> HyperFea: 6531 result = self._Entity.HyperFea 6532 return HyperFea(result) if result is not None else None 6533 6534 @property 6535 def WorkingFolder(self) -> str: 6536 return self._Entity.WorkingFolder 6537 6538 @property 6539 def FemDataSet(self) -> FemDataSet: 6540 result = self._Entity.FemDataSet 6541 return FemDataSet(result) if result is not None else None 6542 6543 @property 6544 def Beams(self) -> ZoneCol: 6545 result = self._Entity.Beams 6546 return ZoneCol(result) if result is not None else None 6547 6548 @property 6549 def Id(self) -> int: 6550 return self._Entity.Id 6551 6552 @property 6553 def Joints(self) -> JointCol: 6554 result = self._Entity.Joints 6555 return JointCol(result) if result is not None else None 6556 6557 @property 6558 def Name(self) -> str: 6559 return self._Entity.Name 6560 6561 @property 6562 def Panels(self) -> ZoneCol: 6563 result = self._Entity.Panels 6564 return ZoneCol(result) if result is not None else None 6565 6566 @property 6567 def Rundecks(self) -> RundeckCol: 6568 result = self._Entity.Rundecks 6569 return RundeckCol(result) if result is not None else None 6570 6571 @property 6572 def Sets(self) -> SetCol: 6573 result = self._Entity.Sets 6574 return SetCol(result) if result is not None else None 6575 6576 @property 6577 def Structures(self) -> StructureCol: 6578 result = self._Entity.Structures 6579 return StructureCol(result) if result is not None else None 6580 6581 @property 6582 def Zones(self) -> ZoneCol: 6583 result = self._Entity.Zones 6584 return ZoneCol(result) if result is not None else None 6585 6586 @property 6587 def PanelSegments(self) -> PanelSegmentCol: 6588 result = self._Entity.PanelSegments 6589 return PanelSegmentCol(result) if result is not None else None 6590 6591 @property 6592 def SectionCuts(self) -> SectionCutCol: 6593 result = self._Entity.SectionCuts 6594 return SectionCutCol(result) if result is not None else None 6595 6596 @property 6597 def DesignLoads(self) -> DesignLoadCol: 6598 result = self._Entity.DesignLoads 6599 return DesignLoadCol(result) if result is not None else None 6600 6601 @property 6602 def DiscreteFieldTables(self) -> DiscreteFieldCol: 6603 result = self._Entity.DiscreteFieldTables 6604 return DiscreteFieldCol(result) if result is not None else None 6605 6606 @property 6607 def AnalysisProperties(self) -> AnalysisPropertyCol: 6608 result = self._Entity.AnalysisProperties 6609 return AnalysisPropertyCol(result) if result is not None else None 6610 6611 @property 6612 def DesignProperties(self) -> DesignPropertyCol: 6613 result = self._Entity.DesignProperties 6614 return DesignPropertyCol(result) if result is not None else None 6615 6616 @property 6617 def LoadProperties(self) -> LoadPropertyCol: 6618 result = self._Entity.LoadProperties 6619 return LoadPropertyCol(result) if result is not None else None 6620 6621 @property 6622 def FemFormat(self) -> types.ProjectModelFormat: 6623 return types.ProjectModelFormat[self._Entity.FemFormat.ToString()] 6624 6625 def Upload(self, uploadSetName: str, company: str, program: str, tags: list[str], notes: str, zoneIds: set[int], jointIds: set[int]) -> bool: 6626 tagsList = List[str]() 6627 if tags is not None: 6628 for thing in tags: 6629 if thing is not None: 6630 tagsList.Add(thing) 6631 zoneIdsSet = HashSet[int]() 6632 if zoneIds is not None: 6633 for thing in zoneIds: 6634 if thing is not None: 6635 zoneIdsSet.Add(thing) 6636 jointIdsSet = HashSet[int]() 6637 if jointIds is not None: 6638 for thing in jointIds: 6639 if thing is not None: 6640 jointIdsSet.Add(thing) 6641 return self._Entity.Upload(uploadSetName, company, program, tagsList, notes, zoneIdsSet, jointIdsSet) 6642 6643 def GetDashboardCompanies(self) -> list[str]: 6644 ''' 6645 This method fetches an array of Dashboard company names that are available to the user who is currently logged in. The URL and authentication token are taken from the last 6646 Dashboard login made through HyperX. 6647 ''' 6648 return list[str](self._Entity.GetDashboardCompanies()) 6649 6650 def GetDashboardPrograms(self, companyName: str) -> list[str]: 6651 return list[str](self._Entity.GetDashboardPrograms(companyName)) 6652 6653 def GetDashboardTags(self, companyName: str) -> list[str]: 6654 return list[str](self._Entity.GetDashboardTags(companyName)) 6655 6656 def GenerateSolverSizingInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6657 zonesSet = HashSet[int]() 6658 if zones is not None: 6659 for thing in zones: 6660 if thing is not None: 6661 zonesSet.Add(thing) 6662 sectionCutsSet = HashSet[int]() 6663 if sectionCuts is not None: 6664 for thing in sectionCuts: 6665 if thing is not None: 6666 sectionCutsSet.Add(thing) 6667 panelSegmentsSet = HashSet[int]() 6668 if panelSegments is not None: 6669 for thing in panelSegments: 6670 if thing is not None: 6671 panelSegmentsSet.Add(thing) 6672 return self._Entity.GenerateSolverSizingInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet) 6673 6674 def GenerateSolverAnalysisInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6675 zonesSet = HashSet[int]() 6676 if zones is not None: 6677 for thing in zones: 6678 if thing is not None: 6679 zonesSet.Add(thing) 6680 sectionCutsSet = HashSet[int]() 6681 if sectionCuts is not None: 6682 for thing in sectionCuts: 6683 if thing is not None: 6684 sectionCutsSet.Add(thing) 6685 panelSegmentsSet = HashSet[int]() 6686 if panelSegments is not None: 6687 for thing in panelSegments: 6688 if thing is not None: 6689 panelSegmentsSet.Add(thing) 6690 return self._Entity.GenerateSolverAnalysisInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet) 6691 6692 def FullRunSolverSizing(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6693 zonesSet = HashSet[int]() 6694 if zones is not None: 6695 for thing in zones: 6696 if thing is not None: 6697 zonesSet.Add(thing) 6698 sectionCutsSet = HashSet[int]() 6699 if sectionCuts is not None: 6700 for thing in sectionCuts: 6701 if thing is not None: 6702 sectionCutsSet.Add(thing) 6703 panelSegmentsSet = HashSet[int]() 6704 if panelSegments is not None: 6705 for thing in panelSegments: 6706 if thing is not None: 6707 panelSegmentsSet.Add(thing) 6708 return self._Entity.FullRunSolverSizing(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads) 6709 6710 def FullRunSolverAnalysis(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6711 zonesSet = HashSet[int]() 6712 if zones is not None: 6713 for thing in zones: 6714 if thing is not None: 6715 zonesSet.Add(thing) 6716 sectionCutsSet = HashSet[int]() 6717 if sectionCuts is not None: 6718 for thing in sectionCuts: 6719 if thing is not None: 6720 sectionCutsSet.Add(thing) 6721 panelSegmentsSet = HashSet[int]() 6722 if panelSegments is not None: 6723 for thing in panelSegments: 6724 if thing is not None: 6725 panelSegmentsSet.Add(thing) 6726 return self._Entity.FullRunSolverAnalysis(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads) 6727 6728 def RunSolver(self, inputFile: str, outputFile: str = None, nThreads: int = None) -> bool: 6729 return self._Entity.RunSolver(inputFile, outputFile, nThreads) 6730 6731 def Dispose(self) -> None: 6732 return self._Entity.Dispose() 6733 6734 def ImportFem(self) -> None: 6735 return self._Entity.ImportFem() 6736 6737 def ImportFeaResults(self, alwaysImport: bool = False) -> str: 6738 return self._Entity.ImportFeaResults(alwaysImport) 6739 6740 def SetFemFormat(self, femFormat: types.ProjectModelFormat) -> None: 6741 return self._Entity.SetFemFormat(_types.ProjectModelFormat(femFormat.value)) 6742 6743 def SetFemUnits(self, femForceId: DbForceUnit, femLengthId: DbLengthUnit, femMassId: DbMassUnit, femTemperatureId: DbTemperatureUnit) -> SetUnitsStatus: 6744 return SetUnitsStatus[self._Entity.SetFemUnits(_api.DbForceUnit(femForceId.value), _api.DbLengthUnit(femLengthId.value), _api.DbMassUnit(femMassId.value), _api.DbTemperatureUnit(femTemperatureId.value)).ToString()] 6745 6746 def SizeJoints(self, joints: list[Joint] = None) -> types.SimpleStatus: 6747 jointsList = List[_api.Joint]() 6748 if joints is not None: 6749 for thing in joints: 6750 if thing is not None: 6751 jointsList.Add(thing._Entity) 6752 return types.SimpleStatus(self._Entity.SizeJoints(joints if joints is None else jointsList)) 6753 6754 def GetJointsWithoutResults(self, joints: list[Joint]) -> set[int]: 6755 jointsList = List[_api.Joint]() 6756 if joints is not None: 6757 for thing in joints: 6758 if thing is not None: 6759 jointsList.Add(thing._Entity) 6760 return set[int](self._Entity.GetJointsWithoutResults(jointsList)) 6761 6762 @overload 6763 def AnalyzeZones(self, zones: list[Zone] = None) -> types.SimpleStatus: ... 6764 6765 @overload 6766 def AnalyzeZones(self, zoneIds: list[int]) -> types.SimpleStatus: ... 6767 6768 @overload 6769 def SizeZones(self, zones: list[Zone] = None) -> types.SimpleStatus: ... 6770 6771 @overload 6772 def SizeZones(self, zoneIds: list[int]) -> types.SimpleStatus: ... 6773 6774 def CreateNonFeaZone(self, category: types.FamilyCategory, name: str = None) -> Zone: 6775 result = self._Entity.CreateNonFeaZone(_types.FamilyCategory(category.value), name) 6776 thisClass = type(result).__name__ 6777 givenClass = Zone 6778 for subclass in Zone.__subclasses__(): 6779 if subclass.__name__ == thisClass: 6780 givenClass = subclass 6781 return givenClass(result) 6782 6783 def ReturnToUnusedFem(self, zoneNumbers: list[int] = None, jointIds: set[int] = None) -> None: 6784 zoneNumbersList = MakeCSharpIntList(zoneNumbers) 6785 jointIdsSet = HashSet[int]() 6786 if jointIds is not None: 6787 for thing in jointIds: 6788 if thing is not None: 6789 jointIdsSet.Add(thing) 6790 return self._Entity.ReturnToUnusedFem(zoneNumbers if zoneNumbers is None else zoneNumbersList, jointIds if jointIds is None else jointIdsSet) 6791 6792 def UnimportFemAsync(self) -> Task: 6793 return Task(self._Entity.UnimportFemAsync()) 6794 6795 def ExportFem(self, destinationFolder: str) -> None: 6796 return self._Entity.ExportFem(destinationFolder) 6797 6798 def ImportCad(self, filePath: str) -> None: 6799 return self._Entity.ImportCad(filePath) 6800 6801 @overload 6802 def ExportCad(self, filePath: str) -> None: ... 6803 6804 @overload 6805 def ExportCad(self, cadIds: tuple[int], filePath: str) -> None: ... 6806 6807 def RegeneratePfem(self) -> None: 6808 ''' 6809 Regenerates and displays the preview FEM. If running a script outside of the Script Runner, 6810 do not call this method 6811 ''' 6812 return self._Entity.RegeneratePfem() 6813 6814 def AnalyzeZones(self, item1 = None) -> types.SimpleStatus: 6815 if isinstance(item1, list) and item1 and isinstance(item1[0], Zone): 6816 zonesList = List[_api.Zone]() 6817 if item1 is not None: 6818 for thing in item1: 6819 if thing is not None: 6820 zonesList.Add(thing._Entity) 6821 return types.SimpleStatus(self._Entity.AnalyzeZones(item1 if item1 is None else zonesList)) 6822 6823 if isinstance(item1, list) and item1 and isinstance(item1[0], int): 6824 zoneIdsList = MakeCSharpIntList(item1) 6825 return types.SimpleStatus(self._Entity.AnalyzeZones(zoneIdsList)) 6826 6827 return types.SimpleStatus(self._Entity.AnalyzeZones(item1)) 6828 6829 def SizeZones(self, item1 = None) -> types.SimpleStatus: 6830 if isinstance(item1, list) and item1 and isinstance(item1[0], Zone): 6831 zonesList = List[_api.Zone]() 6832 if item1 is not None: 6833 for thing in item1: 6834 if thing is not None: 6835 zonesList.Add(thing._Entity) 6836 return types.SimpleStatus(self._Entity.SizeZones(item1 if item1 is None else zonesList)) 6837 6838 if isinstance(item1, list) and item1 and isinstance(item1[0], int): 6839 zoneIdsList = MakeCSharpIntList(item1) 6840 return types.SimpleStatus(self._Entity.SizeZones(zoneIdsList)) 6841 6842 return types.SimpleStatus(self._Entity.SizeZones(item1)) 6843 6844 def ExportCad(self, item1 = None, item2 = None) -> None: 6845 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, str): 6846 cadIdsList = MakeCSharpIntList(item1) 6847 cadIdsEnumerable = IEnumerable(cadIdsList) 6848 return self._Entity.ExportCad(cadIdsEnumerable, item2) 6849 6850 if isinstance(item1, str): 6851 return self._Entity.ExportCad(item1) 6852 6853 return self._Entity.ExportCad(item1, item2) 6854 6855 6856class ProjectInfo(IdNameEntityRenameable): 6857 def __init__(self, projectInfo: _api.ProjectInfo): 6858 self._Entity = projectInfo 6859 6860 6861class FailureModeCategoryCol(IdNameEntityCol[FailureModeCategory]): 6862 def __init__(self, failureModeCategoryCol: _api.FailureModeCategoryCol): 6863 self._Entity = failureModeCategoryCol 6864 self._CollectedClass = FailureModeCategory 6865 6866 @property 6867 def FailureModeCategoryColList(self) -> tuple[FailureModeCategory]: 6868 return tuple([FailureModeCategory(failureModeCategoryCol) for failureModeCategoryCol in self._Entity]) 6869 6870 @overload 6871 def Get(self, name: str) -> FailureModeCategory: ... 6872 6873 @overload 6874 def Get(self, id: int) -> FailureModeCategory: ... 6875 6876 def Get(self, item1 = None) -> FailureModeCategory: 6877 if isinstance(item1, str): 6878 return FailureModeCategory(super().Get(item1)) 6879 6880 if isinstance(item1, int): 6881 return FailureModeCategory(super().Get(item1)) 6882 6883 return FailureModeCategory(self._Entity.Get(item1)) 6884 6885 def __getitem__(self, index: int): 6886 return self.FailureModeCategoryColList[index] 6887 6888 def __iter__(self): 6889 yield from self.FailureModeCategoryColList 6890 6891 def __len__(self): 6892 return len(self.FailureModeCategoryColList) 6893 6894 6895class FoamCol(Generic[T]): 6896 def __init__(self, foamCol: _api.FoamCol): 6897 self._Entity = foamCol 6898 6899 @property 6900 def FoamColList(self) -> tuple[Foam]: 6901 return tuple([Foam(foamCol) for foamCol in self._Entity]) 6902 6903 def Count(self) -> int: 6904 return self._Entity.Count() 6905 6906 def Get(self, materialName: str) -> Foam: 6907 return Foam(self._Entity.Get(materialName)) 6908 6909 def Contains(self, materialName: str) -> bool: 6910 return self._Entity.Contains(materialName) 6911 6912 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Foam: 6913 return Foam(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6914 6915 def Copy(self, fmToCopyName: str, newMaterialName: str = None, femId: int = None) -> Foam: 6916 return Foam(self._Entity.Copy(fmToCopyName, newMaterialName, femId)) 6917 6918 def Delete(self, materialName: str) -> bool: 6919 return self._Entity.Delete(materialName) 6920 6921 def __getitem__(self, index: int): 6922 return self.FoamColList[index] 6923 6924 def __iter__(self): 6925 yield from self.FoamColList 6926 6927 def __len__(self): 6928 return len(self.FoamColList) 6929 6930 6931class HoneycombCol(Generic[T]): 6932 def __init__(self, honeycombCol: _api.HoneycombCol): 6933 self._Entity = honeycombCol 6934 6935 @property 6936 def HoneycombColList(self) -> tuple[Honeycomb]: 6937 return tuple([Honeycomb(honeycombCol) for honeycombCol in self._Entity]) 6938 6939 def Count(self) -> int: 6940 return self._Entity.Count() 6941 6942 def Get(self, materialName: str) -> Honeycomb: 6943 return Honeycomb(self._Entity.Get(materialName)) 6944 6945 def Contains(self, materialName: str) -> bool: 6946 return self._Entity.Contains(materialName) 6947 6948 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Honeycomb: 6949 return Honeycomb(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6950 6951 def Copy(self, honeyToCopyName: str, newMaterialName: str = None, femId: int = None) -> Honeycomb: 6952 return Honeycomb(self._Entity.Copy(honeyToCopyName, newMaterialName, femId)) 6953 6954 def Delete(self, materialName: str) -> bool: 6955 return self._Entity.Delete(materialName) 6956 6957 def __getitem__(self, index: int): 6958 return self.HoneycombColList[index] 6959 6960 def __iter__(self): 6961 yield from self.HoneycombColList 6962 6963 def __len__(self): 6964 return len(self.HoneycombColList) 6965 6966 6967class IsotropicCol(Generic[T]): 6968 def __init__(self, isotropicCol: _api.IsotropicCol): 6969 self._Entity = isotropicCol 6970 6971 @property 6972 def IsotropicColList(self) -> tuple[Isotropic]: 6973 return tuple([Isotropic(isotropicCol) for isotropicCol in self._Entity]) 6974 6975 def Count(self) -> int: 6976 return self._Entity.Count() 6977 6978 def Get(self, materialName: str) -> Isotropic: 6979 return Isotropic(self._Entity.Get(materialName)) 6980 6981 def Contains(self, materialName: str) -> bool: 6982 return self._Entity.Contains(materialName) 6983 6984 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Isotropic: 6985 return Isotropic(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6986 6987 def Copy(self, isoToCopyName: str, newMaterialName: str = None, femId: int = None) -> Isotropic: 6988 return Isotropic(self._Entity.Copy(isoToCopyName, newMaterialName, femId)) 6989 6990 def Delete(self, materialName: str) -> bool: 6991 return self._Entity.Delete(materialName) 6992 6993 def __getitem__(self, index: int): 6994 return self.IsotropicColList[index] 6995 6996 def __iter__(self): 6997 yield from self.IsotropicColList 6998 6999 def __len__(self): 7000 return len(self.IsotropicColList) 7001 7002 7003class LaminateFamilyCol(IdNameEntityCol[LaminateFamily]): 7004 def __init__(self, laminateFamilyCol: _api.LaminateFamilyCol): 7005 self._Entity = laminateFamilyCol 7006 self._CollectedClass = LaminateFamily 7007 7008 @property 7009 def LaminateFamilyColList(self) -> tuple[LaminateFamily]: 7010 return tuple([LaminateFamily(laminateFamilyCol) for laminateFamilyCol in self._Entity]) 7011 7012 @overload 7013 def Get(self, name: str) -> LaminateFamily: ... 7014 7015 @overload 7016 def Get(self, id: int) -> LaminateFamily: ... 7017 7018 def Get(self, item1 = None) -> LaminateFamily: 7019 if isinstance(item1, str): 7020 return LaminateFamily(super().Get(item1)) 7021 7022 if isinstance(item1, int): 7023 return LaminateFamily(super().Get(item1)) 7024 7025 return LaminateFamily(self._Entity.Get(item1)) 7026 7027 def __getitem__(self, index: int): 7028 return self.LaminateFamilyColList[index] 7029 7030 def __iter__(self): 7031 yield from self.LaminateFamilyColList 7032 7033 def __len__(self): 7034 return len(self.LaminateFamilyColList) 7035 7036 7037class LaminateCol(Generic[T]): 7038 def __init__(self, laminateCol: _api.LaminateCol): 7039 self._Entity = laminateCol 7040 7041 @property 7042 def LaminateColList(self) -> tuple[Laminate]: 7043 return tuple([Laminate(laminateCol) for laminateCol in self._Entity]) 7044 7045 def Count(self) -> int: 7046 return self._Entity.Count() 7047 7048 def Get(self, laminateName: str) -> LaminateBase: 7049 result = self._Entity.Get(laminateName) 7050 thisClass = type(result).__name__ 7051 givenClass = LaminateBase 7052 for subclass in LaminateBase.__subclasses__(): 7053 if subclass.__name__ == thisClass: 7054 givenClass = subclass 7055 return givenClass(result) 7056 7057 def Contains(self, laminateName: str) -> bool: 7058 return self._Entity.Contains(laminateName) 7059 7060 def CreateLaminate(self, materialFamily: str, laminateName: str = None) -> Laminate: 7061 return Laminate(self._Entity.CreateLaminate(materialFamily, laminateName)) 7062 7063 def CreateStiffenerLaminate(self, materialFamily: str, stiffenerProfile: types.StiffenerProfile, laminateName: str = None) -> StiffenerLaminate: 7064 return StiffenerLaminate(self._Entity.CreateStiffenerLaminate(materialFamily, _types.StiffenerProfile(stiffenerProfile.value), laminateName)) 7065 7066 def Copy(self, laminateToCopyName: str, newLaminateName: str = None) -> LaminateBase: 7067 result = self._Entity.Copy(laminateToCopyName, newLaminateName) 7068 thisClass = type(result).__name__ 7069 givenClass = LaminateBase 7070 for subclass in LaminateBase.__subclasses__(): 7071 if subclass.__name__ == thisClass: 7072 givenClass = subclass 7073 return givenClass(result) 7074 7075 def Delete(self, name: str) -> bool: 7076 return self._Entity.Delete(name) 7077 7078 def GetLaminate(self, name: str) -> Laminate: 7079 return Laminate(self._Entity.GetLaminate(name)) 7080 7081 def GetStiffenerLaminate(self, name: str) -> StiffenerLaminate: 7082 return StiffenerLaminate(self._Entity.GetStiffenerLaminate(name)) 7083 7084 def __getitem__(self, index: int): 7085 return self.LaminateColList[index] 7086 7087 def __iter__(self): 7088 yield from self.LaminateColList 7089 7090 def __len__(self): 7091 return len(self.LaminateColList) 7092 7093 7094class OrthotropicCol(Generic[T]): 7095 def __init__(self, orthotropicCol: _api.OrthotropicCol): 7096 self._Entity = orthotropicCol 7097 7098 @property 7099 def OrthotropicColList(self) -> tuple[Orthotropic]: 7100 return tuple([Orthotropic(orthotropicCol) for orthotropicCol in self._Entity]) 7101 7102 def Count(self) -> int: 7103 return self._Entity.Count() 7104 7105 def Get(self, materialName: str) -> Orthotropic: 7106 return Orthotropic(self._Entity.Get(materialName)) 7107 7108 def Contains(self, materialName: str) -> bool: 7109 return self._Entity.Contains(materialName) 7110 7111 def Create(self, materialFamilyName: str, thickness: float, density: float, newMaterialName: str = None, femId: int = None) -> Orthotropic: 7112 return Orthotropic(self._Entity.Create(materialFamilyName, thickness, density, newMaterialName, femId)) 7113 7114 def Copy(self, orthoToCopyName: str, newMaterialName: str = None, femId: int = None) -> Orthotropic: 7115 return Orthotropic(self._Entity.Copy(orthoToCopyName, newMaterialName, femId)) 7116 7117 def Delete(self, materialName: str) -> bool: 7118 return self._Entity.Delete(materialName) 7119 7120 def __getitem__(self, index: int): 7121 return self.OrthotropicColList[index] 7122 7123 def __iter__(self): 7124 yield from self.OrthotropicColList 7125 7126 def __len__(self): 7127 return len(self.OrthotropicColList) 7128 7129 7130class PluginPackageCol(IdNameEntityCol[PluginPackage]): 7131 def __init__(self, pluginPackageCol: _api.PluginPackageCol): 7132 self._Entity = pluginPackageCol 7133 self._CollectedClass = PluginPackage 7134 7135 @property 7136 def PluginPackageColList(self) -> tuple[PluginPackage]: 7137 return tuple([PluginPackage(pluginPackageCol) for pluginPackageCol in self._Entity]) 7138 7139 def AddPluginPackage(self, path: str) -> PluginPackage: 7140 return PluginPackage(self._Entity.AddPluginPackage(path)) 7141 7142 @overload 7143 def RemovePluginPackage(self, name: str) -> bool: ... 7144 7145 @overload 7146 def RemovePluginPackage(self, id: int) -> bool: ... 7147 7148 def ClearAllPluginPackages(self) -> None: 7149 ''' 7150 Clears all packages out of the database 7151 ''' 7152 return self._Entity.ClearAllPluginPackages() 7153 7154 def GetPluginPackages(self) -> list[PluginPackage]: 7155 ''' 7156 Gets a list of package info 7157 Includes name, id, file path, version, description, and modification date 7158 ''' 7159 return [PluginPackage(pluginPackage) for pluginPackage in self._Entity.GetPluginPackages()] 7160 7161 @overload 7162 def Get(self, name: str) -> PluginPackage: ... 7163 7164 @overload 7165 def Get(self, id: int) -> PluginPackage: ... 7166 7167 def RemovePluginPackage(self, item1 = None) -> bool: 7168 if isinstance(item1, str): 7169 return self._Entity.RemovePluginPackage(item1) 7170 7171 if isinstance(item1, int): 7172 return self._Entity.RemovePluginPackage(item1) 7173 7174 return self._Entity.RemovePluginPackage(item1) 7175 7176 def Get(self, item1 = None) -> PluginPackage: 7177 if isinstance(item1, str): 7178 return PluginPackage(super().Get(item1)) 7179 7180 if isinstance(item1, int): 7181 return PluginPackage(super().Get(item1)) 7182 7183 return PluginPackage(self._Entity.Get(item1)) 7184 7185 def __getitem__(self, index: int): 7186 return self.PluginPackageColList[index] 7187 7188 def __iter__(self): 7189 yield from self.PluginPackageColList 7190 7191 def __len__(self): 7192 return len(self.PluginPackageColList) 7193 7194 7195class ProjectInfoCol(IdNameEntityCol[ProjectInfo]): 7196 def __init__(self, projectInfoCol: _api.ProjectInfoCol): 7197 self._Entity = projectInfoCol 7198 self._CollectedClass = ProjectInfo 7199 7200 @property 7201 def ProjectInfoColList(self) -> tuple[ProjectInfo]: 7202 return tuple([ProjectInfo(projectInfoCol) for projectInfoCol in self._Entity]) 7203 7204 @overload 7205 def Get(self, name: str) -> ProjectInfo: ... 7206 7207 @overload 7208 def Get(self, id: int) -> ProjectInfo: ... 7209 7210 def Get(self, item1 = None) -> ProjectInfo: 7211 if isinstance(item1, str): 7212 return ProjectInfo(super().Get(item1)) 7213 7214 if isinstance(item1, int): 7215 return ProjectInfo(super().Get(item1)) 7216 7217 return ProjectInfo(self._Entity.Get(item1)) 7218 7219 def __getitem__(self, index: int): 7220 return self.ProjectInfoColList[index] 7221 7222 def __iter__(self): 7223 yield from self.ProjectInfoColList 7224 7225 def __len__(self): 7226 return len(self.ProjectInfoColList) 7227 7228 7229class Application: 7230 ''' 7231 HyperX scripting application. 7232 This API is not guaranteed to be thread-safe. 7233 Calls into a single application instance or its descendents are not safe to be called concurrently. 7234 7235 However, it is safe enough for integration testing to have multiple 7236 application instances with a single process. 7237 ''' 7238 def __init__(self, application: _api.Application): 7239 self._Entity = application 7240 7241 @property 7242 def UnitSystem(self) -> UnitSystem: 7243 ''' 7244 Unit system specified when starting a scripting Application. 7245 ''' 7246 result = self._Entity.UnitSystem 7247 return UnitSystem(result) if result is not None else None 7248 7249 @property 7250 def CompilationDate(self) -> str: 7251 return self._Entity.CompilationDate 7252 7253 @property 7254 def DatabasePath(self) -> str: 7255 return self._Entity.DatabasePath 7256 7257 @property 7258 def ActiveProject(self) -> Project: 7259 ''' 7260 Represents a HyperX project within a database. 7261 ''' 7262 result = self._Entity.ActiveProject 7263 return Project(result) if result is not None else None 7264 7265 @property 7266 def UiRunnerMode(self) -> bool: 7267 return self._Entity.UiRunnerMode 7268 7269 @property 7270 def Version(self) -> str: 7271 return self._Entity.Version 7272 7273 @property 7274 def FailureModeCategories(self) -> FailureModeCategoryCol: 7275 result = self._Entity.FailureModeCategories 7276 return FailureModeCategoryCol(result) if result is not None else None 7277 7278 @property 7279 def FailureModes(self) -> FailureModeCol: 7280 result = self._Entity.FailureModes 7281 return FailureModeCol(result) if result is not None else None 7282 7283 @property 7284 def Packages(self) -> PluginPackageCol: 7285 result = self._Entity.Packages 7286 return PluginPackageCol(result) if result is not None else None 7287 7288 @property 7289 def Foams(self) -> FoamCol: 7290 ''' 7291 Contains a set of all foam materials in a database. 7292 ''' 7293 result = self._Entity.Foams 7294 return FoamCol(result) if result is not None else None 7295 7296 @property 7297 def Honeycombs(self) -> HoneycombCol: 7298 ''' 7299 Contains a set of all honeycomb materials in a database. 7300 ''' 7301 result = self._Entity.Honeycombs 7302 return HoneycombCol(result) if result is not None else None 7303 7304 @property 7305 def Isotropics(self) -> IsotropicCol: 7306 ''' 7307 Contains a set of all isotropic materials in a database. 7308 ''' 7309 result = self._Entity.Isotropics 7310 return IsotropicCol(result) if result is not None else None 7311 7312 @property 7313 def Laminates(self) -> LaminateCol: 7314 result = self._Entity.Laminates 7315 return LaminateCol(result) if result is not None else None 7316 7317 @property 7318 def LaminateFamilies(self) -> LaminateFamilyCol: 7319 result = self._Entity.LaminateFamilies 7320 return LaminateFamilyCol(result) if result is not None else None 7321 7322 @property 7323 def AnalysisProperties(self) -> AnalysisPropertyCol: 7324 result = self._Entity.AnalysisProperties 7325 return AnalysisPropertyCol(result) if result is not None else None 7326 7327 @property 7328 def DesignProperties(self) -> DesignPropertyCol: 7329 result = self._Entity.DesignProperties 7330 return DesignPropertyCol(result) if result is not None else None 7331 7332 @property 7333 def LoadProperties(self) -> LoadPropertyCol: 7334 result = self._Entity.LoadProperties 7335 return LoadPropertyCol(result) if result is not None else None 7336 7337 @property 7338 def Orthotropics(self) -> OrthotropicCol: 7339 ''' 7340 Contains a set of all orthotropic materials in a database. 7341 ''' 7342 result = self._Entity.Orthotropics 7343 return OrthotropicCol(result) if result is not None else None 7344 7345 @property 7346 def ProjectInfos(self) -> ProjectInfoCol: 7347 ''' 7348 Contains a set of all projects in a database. 7349 ''' 7350 result = self._Entity.ProjectInfos 7351 return ProjectInfoCol(result) if result is not None else None 7352 7353 @property 7354 def UserName(self) -> str: 7355 return self._Entity.UserName 7356 7357 @UserName.setter 7358 def UserName(self, value: str) -> None: 7359 self._Entity.UserName = value 7360 7361 def CloseDatabase(self, delay: int = 0) -> None: 7362 return self._Entity.CloseDatabase(delay) 7363 7364 def CopyProject(self, projectId: int, newName: str = None, copyDesignProperties: bool = True, copyAnalysisProperties: bool = True, copyLoadProperties: bool = True, copyWorkingFolder: bool = True) -> ProjectInfo: 7365 return ProjectInfo(self._Entity.CopyProject(projectId, newName, copyDesignProperties, copyAnalysisProperties, copyLoadProperties, copyWorkingFolder)) 7366 7367 def CreateDatabaseFromTemplate(self, templateName: str, newPath: str) -> None: 7368 return self._Entity.CreateDatabaseFromTemplate(templateName, newPath) 7369 7370 def CreateProject(self, projectName: str = None) -> ProjectInfo: 7371 return ProjectInfo(self._Entity.CreateProject(projectName)) 7372 7373 def DeleteProject(self, projectName: str) -> ProjectDeletionStatus: 7374 return ProjectDeletionStatus[self._Entity.DeleteProject(projectName).ToString()] 7375 7376 def Dispose(self) -> None: 7377 ''' 7378 Dispose of the application. Should be explicitly called after the application 7379 is no longer needed unless the application is wrapped with a using clause. 7380 ''' 7381 return self._Entity.Dispose() 7382 7383 def GetAnalyses(self) -> dict[int, AnalysisDefinition]: 7384 ''' 7385 Get all Analysis Definitions in the database. 7386 ''' 7387 return dict[int, AnalysisDefinition](self._Entity.GetAnalyses()) 7388 7389 def Login(self, userName: str, password: str = "") -> None: 7390 return self._Entity.Login(userName, password) 7391 7392 def Migrate(self, databasePath: str) -> str: 7393 return self._Entity.Migrate(databasePath) 7394 7395 def CheckDatabaseIsUpToDate(self, databasePath: str) -> bool: 7396 return self._Entity.CheckDatabaseIsUpToDate(databasePath) 7397 7398 def OpenDatabase(self, databasePath: str) -> None: 7399 return self._Entity.OpenDatabase(databasePath) 7400 7401 def SelectProject(self, projectName: str) -> Project: 7402 return Project(self._Entity.SelectProject(projectName)) 7403 7404 7405class JointDesignProperty(DesignProperty): 7406 def __init__(self, jointDesignProperty: _api.JointDesignProperty): 7407 self._Entity = jointDesignProperty 7408 7409 7410class SizingMaterial(IdEntity): 7411 def __init__(self, sizingMaterial: _api.SizingMaterial): 7412 self._Entity = sizingMaterial 7413 7414 @property 7415 def MaterialId(self) -> int: 7416 return self._Entity.MaterialId 7417 7418 @property 7419 def MaterialType(self) -> types.MaterialType: 7420 ''' 7421 Represents a material's type. 7422 ''' 7423 return types.MaterialType[self._Entity.MaterialType.ToString()] 7424 7425 7426class SizingMaterialCol(IdEntityCol[SizingMaterial]): 7427 def __init__(self, sizingMaterialCol: _api.SizingMaterialCol): 7428 self._Entity = sizingMaterialCol 7429 self._CollectedClass = SizingMaterial 7430 7431 @property 7432 def SizingMaterialColList(self) -> tuple[SizingMaterial]: 7433 return tuple([SizingMaterial(sizingMaterialCol) for sizingMaterialCol in self._Entity]) 7434 7435 @overload 7436 def Get(self, name: str) -> SizingMaterial: ... 7437 7438 @overload 7439 def Contains(self, name: str) -> bool: ... 7440 7441 @overload 7442 def AddSizingMaterial(self, materialId: int) -> bool: ... 7443 7444 @overload 7445 def AddSizingMaterial(self, name: str) -> bool: ... 7446 7447 @overload 7448 def RemoveSizingMaterial(self, materialId: int) -> bool: ... 7449 7450 @overload 7451 def RemoveSizingMaterial(self, name: str) -> bool: ... 7452 7453 @overload 7454 def Contains(self, id: int) -> bool: ... 7455 7456 @overload 7457 def Get(self, id: int) -> SizingMaterial: ... 7458 7459 def Get(self, item1 = None) -> SizingMaterial: 7460 if isinstance(item1, str): 7461 return SizingMaterial(self._Entity.Get(item1)) 7462 7463 if isinstance(item1, int): 7464 return SizingMaterial(super().Get(item1)) 7465 7466 return SizingMaterial(self._Entity.Get(item1)) 7467 7468 def Contains(self, item1 = None) -> bool: 7469 if isinstance(item1, str): 7470 return self._Entity.Contains(item1) 7471 7472 if isinstance(item1, int): 7473 return bool(super().Contains(item1)) 7474 7475 return self._Entity.Contains(item1) 7476 7477 def AddSizingMaterial(self, item1 = None) -> bool: 7478 if isinstance(item1, int): 7479 return self._Entity.AddSizingMaterial(item1) 7480 7481 if isinstance(item1, str): 7482 return self._Entity.AddSizingMaterial(item1) 7483 7484 return self._Entity.AddSizingMaterial(item1) 7485 7486 def RemoveSizingMaterial(self, item1 = None) -> bool: 7487 if isinstance(item1, int): 7488 return self._Entity.RemoveSizingMaterial(item1) 7489 7490 if isinstance(item1, str): 7491 return self._Entity.RemoveSizingMaterial(item1) 7492 7493 return self._Entity.RemoveSizingMaterial(item1) 7494 7495 def __getitem__(self, index: int): 7496 return self.SizingMaterialColList[index] 7497 7498 def __iter__(self): 7499 yield from self.SizingMaterialColList 7500 7501 def __len__(self): 7502 return len(self.SizingMaterialColList) 7503 7504 7505class ZoneOverride(IdEntity): 7506 def __init__(self, zoneOverride: _api.ZoneOverride): 7507 self._Entity = zoneOverride 7508 7509 @property 7510 def AllowMaterials(self) -> bool: 7511 return self._Entity.AllowMaterials 7512 7513 @property 7514 def ProjectId(self) -> int: 7515 return self._Entity.ProjectId 7516 7517 @property 7518 def DesignId(self) -> int: 7519 return self._Entity.DesignId 7520 7521 @property 7522 def FamilyId(self) -> types.BeamPanelFamily: 7523 return types.BeamPanelFamily[self._Entity.FamilyId.ToString()] 7524 7525 @property 7526 def ConceptId(self) -> int: 7527 return self._Entity.ConceptId 7528 7529 @property 7530 def VariableId(self) -> int: 7531 return self._Entity.VariableId 7532 7533 @property 7534 def MinBound(self) -> float: 7535 return self._Entity.MinBound 7536 7537 @property 7538 def MaxBound(self) -> float: 7539 return self._Entity.MaxBound 7540 7541 @property 7542 def StepSize(self) -> float: 7543 return self._Entity.StepSize 7544 7545 @property 7546 def MinPlies(self) -> int: 7547 return self._Entity.MinPlies 7548 7549 @property 7550 def MaxPlies(self) -> int: 7551 return self._Entity.MaxPlies 7552 7553 @property 7554 def PlyStepSize(self) -> int: 7555 return self._Entity.PlyStepSize 7556 7557 @property 7558 def InputMode(self) -> types.VariableInputMode: 7559 return types.VariableInputMode[self._Entity.InputMode.ToString()] 7560 7561 @property 7562 def SizingMaterials(self) -> SizingMaterialCol: 7563 result = self._Entity.SizingMaterials 7564 return SizingMaterialCol(result) if result is not None else None 7565 7566 @property 7567 def AnalysisValue(self) -> float: 7568 return self._Entity.AnalysisValue 7569 7570 @property 7571 def AnalysisMaterial(self) -> str: 7572 return self._Entity.AnalysisMaterial 7573 7574 @property 7575 def AnalysisMaterialType(self) -> types.MaterialType: 7576 return types.MaterialType[self._Entity.AnalysisMaterialType.ToString()] 7577 7578 @MinBound.setter 7579 def MinBound(self, value: float) -> None: 7580 self._Entity.MinBound = value 7581 7582 @MaxBound.setter 7583 def MaxBound(self, value: float) -> None: 7584 self._Entity.MaxBound = value 7585 7586 @StepSize.setter 7587 def StepSize(self, value: float) -> None: 7588 self._Entity.StepSize = value 7589 7590 @MinPlies.setter 7591 def MinPlies(self, value: int) -> None: 7592 self._Entity.MinPlies = value 7593 7594 @MaxPlies.setter 7595 def MaxPlies(self, value: int) -> None: 7596 self._Entity.MaxPlies = value 7597 7598 @PlyStepSize.setter 7599 def PlyStepSize(self, value: int) -> None: 7600 self._Entity.PlyStepSize = value 7601 7602 @AnalysisValue.setter 7603 def AnalysisValue(self, value: float) -> None: 7604 self._Entity.AnalysisValue = value 7605 7606 @AnalysisMaterial.setter 7607 def AnalysisMaterial(self, value: str) -> None: 7608 self._Entity.AnalysisMaterial = value 7609 7610 7611class ToolingConstraint(IdNameEntity): 7612 ''' 7613 Tooling constraints are a feature of Design Properties for Zones. 7614 ''' 7615 def __init__(self, toolingConstraint: _api.ToolingConstraint): 7616 self._Entity = toolingConstraint 7617 7618 @property 7619 def ConstraintMax(self) -> float: 7620 return self._Entity.ConstraintMax 7621 7622 @property 7623 def ConstraintMin(self) -> float: 7624 return self._Entity.ConstraintMin 7625 7626 @property 7627 def ConstraintValue(self) -> float: 7628 return self._Entity.ConstraintValue 7629 7630 @property 7631 def ToolingSelectionType(self) -> types.ToolingSelectionType: 7632 ''' 7633 Defines which selection a given tooling constraint is currently set to. 7634 ''' 7635 return types.ToolingSelectionType[self._Entity.ToolingSelectionType.ToString()] 7636 7637 def SetToAnyValue(self) -> None: 7638 return self._Entity.SetToAnyValue() 7639 7640 def SetToInequality(self, value: float) -> None: 7641 return self._Entity.SetToInequality(value) 7642 7643 def SetToRange(self, min: float, max: float) -> None: 7644 return self._Entity.SetToRange(min, max) 7645 7646 def SetToValue(self, value: float) -> None: 7647 return self._Entity.SetToValue(value) 7648 7649 7650class ZoneOverrideCol(IdEntityCol[ZoneOverride]): 7651 def __init__(self, zoneOverrideCol: _api.ZoneOverrideCol): 7652 self._Entity = zoneOverrideCol 7653 self._CollectedClass = ZoneOverride 7654 7655 @property 7656 def ZoneOverrideColList(self) -> tuple[ZoneOverride]: 7657 return tuple([ZoneOverride(zoneOverrideCol) for zoneOverrideCol in self._Entity]) 7658 7659 def Get(self, zoneNumber: int) -> ZoneOverride: 7660 return ZoneOverride(self._Entity.Get(zoneNumber)) 7661 7662 def __getitem__(self, index: int): 7663 return self.ZoneOverrideColList[index] 7664 7665 def __iter__(self): 7666 yield from self.ZoneOverrideColList 7667 7668 def __len__(self): 7669 return len(self.ZoneOverrideColList) 7670 7671 7672class DesignVariable(IdEntity): 7673 ''' 7674 Holds design variable data. 7675 Min, max, steps, materials. 7676 ''' 7677 def __init__(self, designVariable: _api.DesignVariable): 7678 self._Entity = designVariable 7679 7680 @property 7681 def VariableParameter(self) -> types.VariableParameter: 7682 return types.VariableParameter[self._Entity.VariableParameter.ToString()] 7683 7684 @property 7685 def AllowMaterials(self) -> bool: 7686 return self._Entity.AllowMaterials 7687 7688 @property 7689 def Max(self) -> float: 7690 return self._Entity.Max 7691 7692 @property 7693 def Min(self) -> float: 7694 return self._Entity.Min 7695 7696 @property 7697 def Name(self) -> str: 7698 return self._Entity.Name 7699 7700 @property 7701 def StepSize(self) -> float: 7702 return self._Entity.StepSize 7703 7704 @property 7705 def UseAnalysis(self) -> bool: 7706 return self._Entity.UseAnalysis 7707 7708 @property 7709 def AnalysisMaterial(self) -> str: 7710 return self._Entity.AnalysisMaterial 7711 7712 @property 7713 def AnalysisMaterialType(self) -> types.MaterialType: 7714 return types.MaterialType[self._Entity.AnalysisMaterialType.ToString()] 7715 7716 @property 7717 def SizingMaterialType(self) -> types.MaterialType: 7718 return types.MaterialType[self._Entity.SizingMaterialType.ToString()] 7719 7720 @property 7721 def AnalysisValue(self) -> float: 7722 return self._Entity.AnalysisValue 7723 7724 @property 7725 def Overrides(self) -> ZoneOverrideCol: 7726 result = self._Entity.Overrides 7727 return ZoneOverrideCol(result) if result is not None else None 7728 7729 @Max.setter 7730 def Max(self, value: float) -> None: 7731 self._Entity.Max = value 7732 7733 @Min.setter 7734 def Min(self, value: float) -> None: 7735 self._Entity.Min = value 7736 7737 @StepSize.setter 7738 def StepSize(self, value: float) -> None: 7739 self._Entity.StepSize = value 7740 7741 @UseAnalysis.setter 7742 def UseAnalysis(self, value: bool) -> None: 7743 self._Entity.UseAnalysis = value 7744 7745 @AnalysisMaterial.setter 7746 def AnalysisMaterial(self, value: str) -> None: 7747 self._Entity.AnalysisMaterial = value 7748 7749 @AnalysisValue.setter 7750 def AnalysisValue(self, value: float) -> None: 7751 self._Entity.AnalysisValue = value 7752 7753 @overload 7754 def AddMaterials(self, materialIds: set[int]) -> None: ... 7755 7756 @overload 7757 def AddMaterials(self, materialNames: set[str]) -> None: ... 7758 7759 def GetSizingMaterials(self) -> list[int]: 7760 ''' 7761 Get a list of materials used for sizing, if they exist. 7762 ''' 7763 return [int32 for int32 in self._Entity.GetSizingMaterials()] 7764 7765 def RemoveSizingMaterials(self, materialIds: tuple[int] = None) -> None: 7766 materialIdsList = MakeCSharpIntList(materialIds) 7767 materialIdsEnumerable = IEnumerable(materialIdsList) 7768 return self._Entity.RemoveSizingMaterials(materialIds if materialIds is None else materialIdsEnumerable) 7769 7770 def GetAnalysisMaterial(self) -> int: 7771 ''' 7772 Get the material used for analysis, if it exists. 7773 ''' 7774 return self._Entity.GetAnalysisMaterial() 7775 7776 def RemoveAnalysisMaterial(self) -> None: 7777 ''' 7778 Remove the analysis material assigned to this variable. 7779 ''' 7780 return self._Entity.RemoveAnalysisMaterial() 7781 7782 def AddMaterials(self, item1 = None) -> None: 7783 if isinstance(item1, set) and item1 and isinstance(list(item1)[0], int): 7784 materialIdsSet = HashSet[int]() 7785 if item1 is not None: 7786 for thing in item1: 7787 if thing is not None: 7788 materialIdsSet.Add(thing) 7789 return self._Entity.AddMaterials(materialIdsSet) 7790 7791 if isinstance(item1, set) and item1 and isinstance(list(item1)[0], str): 7792 materialNamesSet = HashSet[str]() 7793 if item1 is not None: 7794 for thing in item1: 7795 if thing is not None: 7796 materialNamesSet.Add(thing) 7797 return self._Entity.AddMaterials(materialNamesSet) 7798 7799 return self._Entity.AddMaterials(item1) 7800 7801 7802class ToolingConstraintCol(IdNameEntityCol[ToolingConstraint]): 7803 def __init__(self, toolingConstraintCol: _api.ToolingConstraintCol): 7804 self._Entity = toolingConstraintCol 7805 self._CollectedClass = ToolingConstraint 7806 7807 @property 7808 def ToolingConstraintColList(self) -> tuple[ToolingConstraint]: 7809 return tuple([ToolingConstraint(toolingConstraintCol) for toolingConstraintCol in self._Entity]) 7810 7811 @overload 7812 def Get(self, name: str) -> ToolingConstraint: ... 7813 7814 @overload 7815 def Get(self, id: int) -> ToolingConstraint: ... 7816 7817 def Get(self, item1 = None) -> ToolingConstraint: 7818 if isinstance(item1, str): 7819 return ToolingConstraint(super().Get(item1)) 7820 7821 if isinstance(item1, int): 7822 return ToolingConstraint(super().Get(item1)) 7823 7824 return ToolingConstraint(self._Entity.Get(item1)) 7825 7826 def __getitem__(self, index: int): 7827 return self.ToolingConstraintColList[index] 7828 7829 def __iter__(self): 7830 yield from self.ToolingConstraintColList 7831 7832 def __len__(self): 7833 return len(self.ToolingConstraintColList) 7834 7835 7836class DesignVariableCol(IdEntityCol[DesignVariable]): 7837 def __init__(self, designVariableCol: _api.DesignVariableCol): 7838 self._Entity = designVariableCol 7839 self._CollectedClass = DesignVariable 7840 7841 @property 7842 def DesignVariableColList(self) -> tuple[DesignVariable]: 7843 return tuple([DesignVariable(designVariableCol) for designVariableCol in self._Entity]) 7844 7845 @overload 7846 def Get(self, parameterId: types.VariableParameter) -> DesignVariable: ... 7847 7848 @overload 7849 def Get(self, id: int) -> DesignVariable: ... 7850 7851 def Get(self, item1 = None) -> DesignVariable: 7852 if isinstance(item1, types.VariableParameter): 7853 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value))) 7854 7855 if isinstance(item1, int): 7856 return DesignVariable(super().Get(item1)) 7857 7858 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value))) 7859 7860 def __getitem__(self, index: int): 7861 return self.DesignVariableColList[index] 7862 7863 def __iter__(self): 7864 yield from self.DesignVariableColList 7865 7866 def __len__(self): 7867 return len(self.DesignVariableColList) 7868 7869 7870class ZoneDesignProperty(DesignProperty): 7871 def __init__(self, zoneDesignProperty: _api.ZoneDesignProperty): 7872 self._Entity = zoneDesignProperty 7873 7874 @property 7875 def FamilyId(self) -> types.BeamPanelFamily: 7876 return types.BeamPanelFamily[self._Entity.FamilyId.ToString()] 7877 7878 @property 7879 def ConceptId(self) -> int: 7880 return self._Entity.ConceptId 7881 7882 @property 7883 def FamilyConceptUID(self) -> types.FamilyConceptUID: 7884 return types.FamilyConceptUID[self._Entity.FamilyConceptUID.ToString()] 7885 7886 @property 7887 def ToolingConstraints(self) -> ToolingConstraintCol: 7888 result = self._Entity.ToolingConstraints 7889 return ToolingConstraintCol(result) if result is not None else None 7890 7891 @property 7892 def DesignVariables(self) -> DesignVariableCol: 7893 result = self._Entity.DesignVariables 7894 return DesignVariableCol(result) if result is not None else None 7895 7896 7897class BulkUpdaterBase(ABC): 7898 def __init__(self, bulkUpdaterBase: _api.BulkUpdaterBase): 7899 self._Entity = bulkUpdaterBase 7900 7901 def Update(self, func: Action) -> None: 7902 entityType = self._Entity.GetType().BaseType.GenericTypeArguments[0] 7903 funcAction = Action[entityType](func) 7904 return self._Entity.Update(funcAction) 7905 7906 7907class LoadPropertyUserRowBulkUpdater(BulkUpdaterBase): 7908 def __init__(self, loadPropertyUserRowBulkUpdater: _api.LoadPropertyUserRowBulkUpdater): 7909 self._Entity = loadPropertyUserRowBulkUpdater 7910 7911 7912class LoadPropertyUserRow(IdNameEntity): 7913 def __init__(self, loadPropertyUserRow: _api.LoadPropertyUserRow): 7914 self._Entity = loadPropertyUserRow 7915 7916 @property 7917 def LoadScenarioId(self) -> int: 7918 return self._Entity.LoadScenarioId 7919 7920 @property 7921 def LoadPropertyId(self) -> int: 7922 return self._Entity.LoadPropertyId 7923 7924 @property 7925 def Type(self) -> types.LoadSetType: 7926 return types.LoadSetType[self._Entity.Type.ToString()] 7927 7928 @property 7929 def ReferenceTemperature(self) -> float: 7930 return self._Entity.ReferenceTemperature 7931 7932 @property 7933 def PressureOrTemperature(self) -> float: 7934 return self._Entity.PressureOrTemperature 7935 7936 @property 7937 def LimitFactor(self) -> float: 7938 return self._Entity.LimitFactor 7939 7940 @property 7941 def UltimateFactor(self) -> float: 7942 return self._Entity.UltimateFactor 7943 7944 @ReferenceTemperature.setter 7945 def ReferenceTemperature(self, value: float) -> None: 7946 self._Entity.ReferenceTemperature = value 7947 7948 @PressureOrTemperature.setter 7949 def PressureOrTemperature(self, value: float) -> None: 7950 self._Entity.PressureOrTemperature = value 7951 7952 @LimitFactor.setter 7953 def LimitFactor(self, value: float) -> None: 7954 self._Entity.LimitFactor = value 7955 7956 @UltimateFactor.setter 7957 def UltimateFactor(self, value: float) -> None: 7958 self._Entity.UltimateFactor = value 7959 7960 7961class LoadPropertyUserBeamRow(LoadPropertyUserRow): 7962 def __init__(self, loadPropertyUserBeamRow: _api.LoadPropertyUserBeamRow): 7963 self._Entity = loadPropertyUserBeamRow 7964 7965 @property 7966 def M1A(self) -> float: 7967 return self._Entity.M1A 7968 7969 @property 7970 def M2A(self) -> float: 7971 return self._Entity.M2A 7972 7973 @property 7974 def M1B(self) -> float: 7975 return self._Entity.M1B 7976 7977 @property 7978 def M2B(self) -> float: 7979 return self._Entity.M2B 7980 7981 @property 7982 def V1(self) -> float: 7983 return self._Entity.V1 7984 7985 @property 7986 def V2(self) -> float: 7987 return self._Entity.V2 7988 7989 @property 7990 def Axial(self) -> float: 7991 return self._Entity.Axial 7992 7993 @property 7994 def Torque(self) -> float: 7995 return self._Entity.Torque 7996 7997 @M1A.setter 7998 def M1A(self, value: float) -> None: 7999 self._Entity.M1A = value 8000 8001 @M2A.setter 8002 def M2A(self, value: float) -> None: 8003 self._Entity.M2A = value 8004 8005 @M1B.setter 8006 def M1B(self, value: float) -> None: 8007 self._Entity.M1B = value 8008 8009 @M2B.setter 8010 def M2B(self, value: float) -> None: 8011 self._Entity.M2B = value 8012 8013 @V1.setter 8014 def V1(self, value: float) -> None: 8015 self._Entity.V1 = value 8016 8017 @V2.setter 8018 def V2(self, value: float) -> None: 8019 self._Entity.V2 = value 8020 8021 @Axial.setter 8022 def Axial(self, value: float) -> None: 8023 self._Entity.Axial = value 8024 8025 @Torque.setter 8026 def Torque(self, value: float) -> None: 8027 self._Entity.Torque = value 8028 8029 8030class LoadPropertyUserFeaBeamRow(LoadPropertyUserBeamRow): 8031 def __init__(self, loadPropertyUserFeaBeamRow: _api.LoadPropertyUserFeaBeamRow): 8032 self._Entity = loadPropertyUserFeaBeamRow 8033 8034 def SetName(self, name: str) -> None: 8035 return self._Entity.SetName(name) 8036 8037 8038class LoadPropertyUserFeaBeamRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8039 def __init__(self, loadPropertyUserFeaBeamRowBulkUpdater: _api.LoadPropertyUserFeaBeamRowBulkUpdater): 8040 self._Entity = loadPropertyUserFeaBeamRowBulkUpdater 8041 8042 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaBeamRow]) -> LoadPropertyUserFeaBeamRowBulkUpdater: 8043 itemsList = List[_api.LoadPropertyUserFeaBeamRow]() 8044 if items is not None: 8045 for thing in items: 8046 if thing is not None: 8047 itemsList.Add(thing._Entity) 8048 return LoadPropertyUserFeaBeamRowBulkUpdater(_api.LoadPropertyUserFeaBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8049 8050 8051class LoadPropertyUserPanelJointRow(LoadPropertyUserRow): 8052 def __init__(self, loadPropertyUserPanelJointRow: _api.LoadPropertyUserPanelJointRow): 8053 self._Entity = loadPropertyUserPanelJointRow 8054 8055 @property 8056 def Nx(self) -> float: 8057 return self._Entity.Nx 8058 8059 @property 8060 def Ny(self) -> float: 8061 return self._Entity.Ny 8062 8063 @property 8064 def Nxy(self) -> float: 8065 return self._Entity.Nxy 8066 8067 @property 8068 def Mx(self) -> float: 8069 return self._Entity.Mx 8070 8071 @property 8072 def My(self) -> float: 8073 return self._Entity.My 8074 8075 @property 8076 def Mxy(self) -> float: 8077 return self._Entity.Mxy 8078 8079 @property 8080 def Qx(self) -> float: 8081 return self._Entity.Qx 8082 8083 @property 8084 def Qy(self) -> float: 8085 return self._Entity.Qy 8086 8087 @Nx.setter 8088 def Nx(self, value: float) -> None: 8089 self._Entity.Nx = value 8090 8091 @Ny.setter 8092 def Ny(self, value: float) -> None: 8093 self._Entity.Ny = value 8094 8095 @Nxy.setter 8096 def Nxy(self, value: float) -> None: 8097 self._Entity.Nxy = value 8098 8099 @Mx.setter 8100 def Mx(self, value: float) -> None: 8101 self._Entity.Mx = value 8102 8103 @My.setter 8104 def My(self, value: float) -> None: 8105 self._Entity.My = value 8106 8107 @Mxy.setter 8108 def Mxy(self, value: float) -> None: 8109 self._Entity.Mxy = value 8110 8111 @Qx.setter 8112 def Qx(self, value: float) -> None: 8113 self._Entity.Qx = value 8114 8115 @Qy.setter 8116 def Qy(self, value: float) -> None: 8117 self._Entity.Qy = value 8118 8119 8120class LoadPropertyUserFeaJointRow(LoadPropertyUserPanelJointRow): 8121 def __init__(self, loadPropertyUserFeaJointRow: _api.LoadPropertyUserFeaJointRow): 8122 self._Entity = loadPropertyUserFeaJointRow 8123 8124 def SetName(self, name: str) -> None: 8125 return self._Entity.SetName(name) 8126 8127 8128class LoadPropertyUserFeaJointRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8129 def __init__(self, loadPropertyUserFeaJointRowBulkUpdater: _api.LoadPropertyUserFeaJointRowBulkUpdater): 8130 self._Entity = loadPropertyUserFeaJointRowBulkUpdater 8131 8132 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaJointRow]) -> LoadPropertyUserFeaJointRowBulkUpdater: 8133 itemsList = List[_api.LoadPropertyUserFeaJointRow]() 8134 if items is not None: 8135 for thing in items: 8136 if thing is not None: 8137 itemsList.Add(thing._Entity) 8138 return LoadPropertyUserFeaJointRowBulkUpdater(_api.LoadPropertyUserFeaJointRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8139 8140 8141class LoadPropertyUserFeaPanelRow(LoadPropertyUserPanelJointRow): 8142 def __init__(self, loadPropertyUserFeaPanelRow: _api.LoadPropertyUserFeaPanelRow): 8143 self._Entity = loadPropertyUserFeaPanelRow 8144 8145 def SetName(self, name: str) -> None: 8146 return self._Entity.SetName(name) 8147 8148 8149class LoadPropertyUserFeaPanelRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8150 def __init__(self, loadPropertyUserFeaPanelRowBulkUpdater: _api.LoadPropertyUserFeaPanelRowBulkUpdater): 8151 self._Entity = loadPropertyUserFeaPanelRowBulkUpdater 8152 8153 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaPanelRow]) -> LoadPropertyUserFeaPanelRowBulkUpdater: 8154 itemsList = List[_api.LoadPropertyUserFeaPanelRow]() 8155 if items is not None: 8156 for thing in items: 8157 if thing is not None: 8158 itemsList.Add(thing._Entity) 8159 return LoadPropertyUserFeaPanelRowBulkUpdater(_api.LoadPropertyUserFeaPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8160 8161 8162class LoadPropertyUserGeneralBeamRow(LoadPropertyUserBeamRow): 8163 def __init__(self, loadPropertyUserGeneralBeamRow: _api.LoadPropertyUserGeneralBeamRow): 8164 self._Entity = loadPropertyUserGeneralBeamRow 8165 8166 @property 8167 def M1A(self) -> float: 8168 return self._Entity.M1A 8169 8170 @property 8171 def M2A(self) -> float: 8172 return self._Entity.M2A 8173 8174 @property 8175 def M1B(self) -> float: 8176 return self._Entity.M1B 8177 8178 @property 8179 def M2B(self) -> float: 8180 return self._Entity.M2B 8181 8182 @property 8183 def V1(self) -> float: 8184 return self._Entity.V1 8185 8186 @property 8187 def V2(self) -> float: 8188 return self._Entity.V2 8189 8190 @property 8191 def Axial(self) -> float: 8192 return self._Entity.Axial 8193 8194 @property 8195 def Torque(self) -> float: 8196 return self._Entity.Torque 8197 8198 @property 8199 def M1AType(self) -> types.BoundaryConditionType: 8200 return types.BoundaryConditionType[self._Entity.M1AType.ToString()] 8201 8202 @property 8203 def M2AType(self) -> types.BoundaryConditionType: 8204 return types.BoundaryConditionType[self._Entity.M2AType.ToString()] 8205 8206 @property 8207 def M1BType(self) -> types.BoundaryConditionType: 8208 return types.BoundaryConditionType[self._Entity.M1BType.ToString()] 8209 8210 @property 8211 def M2BType(self) -> types.BoundaryConditionType: 8212 return types.BoundaryConditionType[self._Entity.M2BType.ToString()] 8213 8214 @property 8215 def V1Type(self) -> types.BoundaryConditionType: 8216 return types.BoundaryConditionType[self._Entity.V1Type.ToString()] 8217 8218 @property 8219 def V2Type(self) -> types.BoundaryConditionType: 8220 return types.BoundaryConditionType[self._Entity.V2Type.ToString()] 8221 8222 @property 8223 def AxialType(self) -> types.BoundaryConditionType: 8224 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 8225 8226 @property 8227 def TorqueType(self) -> types.BoundaryConditionType: 8228 return types.BoundaryConditionType[self._Entity.TorqueType.ToString()] 8229 8230 @M1A.setter 8231 def M1A(self, value: float) -> None: 8232 self._Entity.M1A = value 8233 8234 @M2A.setter 8235 def M2A(self, value: float) -> None: 8236 self._Entity.M2A = value 8237 8238 @M1B.setter 8239 def M1B(self, value: float) -> None: 8240 self._Entity.M1B = value 8241 8242 @M2B.setter 8243 def M2B(self, value: float) -> None: 8244 self._Entity.M2B = value 8245 8246 @V1.setter 8247 def V1(self, value: float) -> None: 8248 self._Entity.V1 = value 8249 8250 @V2.setter 8251 def V2(self, value: float) -> None: 8252 self._Entity.V2 = value 8253 8254 @Axial.setter 8255 def Axial(self, value: float) -> None: 8256 self._Entity.Axial = value 8257 8258 @Torque.setter 8259 def Torque(self, value: float) -> None: 8260 self._Entity.Torque = value 8261 8262 8263class LoadPropertyUserGeneralBeamRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8264 def __init__(self, loadPropertyUserGeneralBeamRowBulkUpdater: _api.LoadPropertyUserGeneralBeamRowBulkUpdater): 8265 self._Entity = loadPropertyUserGeneralBeamRowBulkUpdater 8266 8267 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralBeamRow]) -> LoadPropertyUserGeneralBeamRowBulkUpdater: 8268 itemsList = List[_api.LoadPropertyUserGeneralBeamRow]() 8269 if items is not None: 8270 for thing in items: 8271 if thing is not None: 8272 itemsList.Add(thing._Entity) 8273 return LoadPropertyUserGeneralBeamRowBulkUpdater(_api.LoadPropertyUserGeneralBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8274 8275 8276class LoadPropertyUserGeneralPanelRow(LoadPropertyUserPanelJointRow): 8277 def __init__(self, loadPropertyUserGeneralPanelRow: _api.LoadPropertyUserGeneralPanelRow): 8278 self._Entity = loadPropertyUserGeneralPanelRow 8279 8280 @property 8281 def Nx(self) -> float: 8282 return self._Entity.Nx 8283 8284 @property 8285 def Ny(self) -> float: 8286 return self._Entity.Ny 8287 8288 @property 8289 def Nxy(self) -> float: 8290 return self._Entity.Nxy 8291 8292 @property 8293 def Mx(self) -> float: 8294 return self._Entity.Mx 8295 8296 @property 8297 def My(self) -> float: 8298 return self._Entity.My 8299 8300 @property 8301 def Mxy(self) -> float: 8302 return self._Entity.Mxy 8303 8304 @property 8305 def Qx(self) -> float: 8306 return self._Entity.Qx 8307 8308 @property 8309 def Qy(self) -> float: 8310 return self._Entity.Qy 8311 8312 @property 8313 def NxType(self) -> types.BoundaryConditionType: 8314 return types.BoundaryConditionType[self._Entity.NxType.ToString()] 8315 8316 @property 8317 def NyType(self) -> types.BoundaryConditionType: 8318 return types.BoundaryConditionType[self._Entity.NyType.ToString()] 8319 8320 @property 8321 def NxyType(self) -> types.BoundaryConditionType: 8322 return types.BoundaryConditionType[self._Entity.NxyType.ToString()] 8323 8324 @property 8325 def MxType(self) -> types.BoundaryConditionType: 8326 return types.BoundaryConditionType[self._Entity.MxType.ToString()] 8327 8328 @property 8329 def MyType(self) -> types.BoundaryConditionType: 8330 return types.BoundaryConditionType[self._Entity.MyType.ToString()] 8331 8332 @property 8333 def MxyType(self) -> types.BoundaryConditionType: 8334 return types.BoundaryConditionType[self._Entity.MxyType.ToString()] 8335 8336 @property 8337 def QxType(self) -> types.BoundaryConditionType: 8338 return types.BoundaryConditionType[self._Entity.QxType.ToString()] 8339 8340 @property 8341 def QyType(self) -> types.BoundaryConditionType: 8342 return types.BoundaryConditionType[self._Entity.QyType.ToString()] 8343 8344 @Nx.setter 8345 def Nx(self, value: float) -> None: 8346 self._Entity.Nx = value 8347 8348 @Ny.setter 8349 def Ny(self, value: float) -> None: 8350 self._Entity.Ny = value 8351 8352 @Nxy.setter 8353 def Nxy(self, value: float) -> None: 8354 self._Entity.Nxy = value 8355 8356 @Mx.setter 8357 def Mx(self, value: float) -> None: 8358 self._Entity.Mx = value 8359 8360 @My.setter 8361 def My(self, value: float) -> None: 8362 self._Entity.My = value 8363 8364 @Mxy.setter 8365 def Mxy(self, value: float) -> None: 8366 self._Entity.Mxy = value 8367 8368 @Qx.setter 8369 def Qx(self, value: float) -> None: 8370 self._Entity.Qx = value 8371 8372 @Qy.setter 8373 def Qy(self, value: float) -> None: 8374 self._Entity.Qy = value 8375 8376 8377class LoadPropertyUserGeneralPanelRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8378 def __init__(self, loadPropertyUserGeneralPanelRowBulkUpdater: _api.LoadPropertyUserGeneralPanelRowBulkUpdater): 8379 self._Entity = loadPropertyUserGeneralPanelRowBulkUpdater 8380 8381 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralPanelRow]) -> LoadPropertyUserGeneralPanelRowBulkUpdater: 8382 itemsList = List[_api.LoadPropertyUserGeneralPanelRow]() 8383 if items is not None: 8384 for thing in items: 8385 if thing is not None: 8386 itemsList.Add(thing._Entity) 8387 return LoadPropertyUserGeneralPanelRowBulkUpdater(_api.LoadPropertyUserGeneralPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 8388 8389 8390class LoadPropertyFea(LoadProperty): 8391 def __init__(self, loadPropertyFea: _api.LoadPropertyFea): 8392 self._Entity = loadPropertyFea 8393 8394 @property 8395 def HasNx(self) -> bool: 8396 return self._Entity.HasNx 8397 8398 @property 8399 def HasNy(self) -> bool: 8400 return self._Entity.HasNy 8401 8402 @property 8403 def HasNxy(self) -> bool: 8404 return self._Entity.HasNxy 8405 8406 @property 8407 def HasMx(self) -> bool: 8408 return self._Entity.HasMx 8409 8410 @property 8411 def HasMy(self) -> bool: 8412 return self._Entity.HasMy 8413 8414 @property 8415 def HasMxy(self) -> bool: 8416 return self._Entity.HasMxy 8417 8418 @property 8419 def HasQx(self) -> bool: 8420 return self._Entity.HasQx 8421 8422 @property 8423 def HasQy(self) -> bool: 8424 return self._Entity.HasQy 8425 8426 @property 8427 def HasM1a(self) -> bool: 8428 return self._Entity.HasM1a 8429 8430 @property 8431 def HasM1b(self) -> bool: 8432 return self._Entity.HasM1b 8433 8434 @property 8435 def M2a(self) -> bool: 8436 return self._Entity.M2a 8437 8438 @property 8439 def V1(self) -> bool: 8440 return self._Entity.V1 8441 8442 @property 8443 def V2(self) -> bool: 8444 return self._Entity.V2 8445 8446 @property 8447 def Axial(self) -> bool: 8448 return self._Entity.Axial 8449 8450 @property 8451 def Torque(self) -> bool: 8452 return self._Entity.Torque 8453 8454 @property 8455 def Tension(self) -> bool: 8456 return self._Entity.Tension 8457 8458 @property 8459 def Shear(self) -> bool: 8460 return self._Entity.Shear 8461 8462 @property 8463 def Moment(self) -> bool: 8464 return self._Entity.Moment 8465 8466 @HasNx.setter 8467 def HasNx(self, value: bool) -> None: 8468 self._Entity.HasNx = value 8469 8470 @HasNy.setter 8471 def HasNy(self, value: bool) -> None: 8472 self._Entity.HasNy = value 8473 8474 @HasNxy.setter 8475 def HasNxy(self, value: bool) -> None: 8476 self._Entity.HasNxy = value 8477 8478 @HasMx.setter 8479 def HasMx(self, value: bool) -> None: 8480 self._Entity.HasMx = value 8481 8482 @HasMy.setter 8483 def HasMy(self, value: bool) -> None: 8484 self._Entity.HasMy = value 8485 8486 @HasMxy.setter 8487 def HasMxy(self, value: bool) -> None: 8488 self._Entity.HasMxy = value 8489 8490 @HasQx.setter 8491 def HasQx(self, value: bool) -> None: 8492 self._Entity.HasQx = value 8493 8494 @HasQy.setter 8495 def HasQy(self, value: bool) -> None: 8496 self._Entity.HasQy = value 8497 8498 @HasM1a.setter 8499 def HasM1a(self, value: bool) -> None: 8500 self._Entity.HasM1a = value 8501 8502 @HasM1b.setter 8503 def HasM1b(self, value: bool) -> None: 8504 self._Entity.HasM1b = value 8505 8506 @M2a.setter 8507 def M2a(self, value: bool) -> None: 8508 self._Entity.M2a = value 8509 8510 @V1.setter 8511 def V1(self, value: bool) -> None: 8512 self._Entity.V1 = value 8513 8514 @V2.setter 8515 def V2(self, value: bool) -> None: 8516 self._Entity.V2 = value 8517 8518 @Axial.setter 8519 def Axial(self, value: bool) -> None: 8520 self._Entity.Axial = value 8521 8522 @Torque.setter 8523 def Torque(self, value: bool) -> None: 8524 self._Entity.Torque = value 8525 8526 @Tension.setter 8527 def Tension(self, value: bool) -> None: 8528 self._Entity.Tension = value 8529 8530 @Shear.setter 8531 def Shear(self, value: bool) -> None: 8532 self._Entity.Shear = value 8533 8534 @Moment.setter 8535 def Moment(self, value: bool) -> None: 8536 self._Entity.Moment = value 8537 8538 8539class LoadPropertyAverage(LoadPropertyFea): 8540 def __init__(self, loadPropertyAverage: _api.LoadPropertyAverage): 8541 self._Entity = loadPropertyAverage 8542 8543 @property 8544 def ElementType(self) -> types.LoadPropertyAverageElementType: 8545 return types.LoadPropertyAverageElementType[self._Entity.ElementType.ToString()] 8546 8547 @ElementType.setter 8548 def ElementType(self, value: types.LoadPropertyAverageElementType) -> None: 8549 self._Entity.ElementType = _types.LoadPropertyAverageElementType(value.value) 8550 8551 8552class LoadPropertyElementBased(LoadPropertyFea): 8553 def __init__(self, loadPropertyElementBased: _api.LoadPropertyElementBased): 8554 self._Entity = loadPropertyElementBased 8555 8556 8557class LoadPropertyNeighborAverage(LoadPropertyFea): 8558 def __init__(self, loadPropertyNeighborAverage: _api.LoadPropertyNeighborAverage): 8559 self._Entity = loadPropertyNeighborAverage 8560 8561 @property 8562 def NumberOfNeighborsPerSide(self) -> int: 8563 return self._Entity.NumberOfNeighborsPerSide 8564 8565 @NumberOfNeighborsPerSide.setter 8566 def NumberOfNeighborsPerSide(self, value: int) -> None: 8567 self._Entity.NumberOfNeighborsPerSide = value 8568 8569 8570class LoadPropertyPeakLoad(LoadPropertyFea): 8571 def __init__(self, loadPropertyPeakLoad: _api.LoadPropertyPeakLoad): 8572 self._Entity = loadPropertyPeakLoad 8573 8574 @property 8575 def ElementScope(self) -> types.LoadPropertyPeakElementScope: 8576 return types.LoadPropertyPeakElementScope[self._Entity.ElementScope.ToString()] 8577 8578 @ElementScope.setter 8579 def ElementScope(self, value: types.LoadPropertyPeakElementScope) -> None: 8580 self._Entity.ElementScope = _types.LoadPropertyPeakElementScope(value.value) 8581 8582 8583class LoadPropertyStatistical(LoadPropertyFea): 8584 def __init__(self, loadPropertyStatistical: _api.LoadPropertyStatistical): 8585 self._Entity = loadPropertyStatistical 8586 8587 @property 8588 def NSigma(self) -> int: 8589 return self._Entity.NSigma 8590 8591 @NSigma.setter 8592 def NSigma(self, value: int) -> None: 8593 self._Entity.NSigma = value 8594 8595 8596class LoadPropertyUserFeaRowCol(IdNameEntityCol, Generic[T]): 8597 def __init__(self, loadPropertyUserFeaRowCol: _api.LoadPropertyUserFeaRowCol): 8598 self._Entity = loadPropertyUserFeaRowCol 8599 self._CollectedClass = T 8600 8601 @property 8602 def LoadPropertyUserFeaRowColList(self) -> tuple[T]: 8603 if self._Entity.Count() <= 0: 8604 return () 8605 thisClass = type(self._Entity._items[0]).__name__ 8606 givenClass = T 8607 for subclass in T.__subclasses__(): 8608 if subclass.__name__ == thisClass: 8609 givenClass = subclass 8610 return tuple([givenClass(loadPropertyUserFeaRowCol) for loadPropertyUserFeaRowCol in self._Entity]) 8611 8612 def AddScenario(self, name: str = None) -> T: 8613 return self._Entity.AddScenario(name) 8614 8615 @overload 8616 def DeleteScenario(self, scenarioId: int) -> bool: ... 8617 8618 @overload 8619 def DeleteScenario(self, scenarioName: str) -> bool: ... 8620 8621 @overload 8622 def Get(self, name: str) -> T: ... 8623 8624 @overload 8625 def Get(self, id: int) -> T: ... 8626 8627 def DeleteScenario(self, item1 = None) -> bool: 8628 if isinstance(item1, int): 8629 return self._Entity.DeleteScenario(item1) 8630 8631 if isinstance(item1, str): 8632 return self._Entity.DeleteScenario(item1) 8633 8634 return self._Entity.DeleteScenario(item1) 8635 8636 def Get(self, item1 = None) -> T: 8637 if isinstance(item1, str): 8638 return super().Get(item1) 8639 8640 if isinstance(item1, int): 8641 return super().Get(item1) 8642 8643 return self._Entity.Get(item1) 8644 8645 def __getitem__(self, index: int): 8646 return self.LoadPropertyUserFeaRowColList[index] 8647 8648 def __iter__(self): 8649 yield from self.LoadPropertyUserFeaRowColList 8650 8651 def __len__(self): 8652 return len(self.LoadPropertyUserFeaRowColList) 8653 8654 8655class LoadPropertyUserFeaBeamRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaBeamRow]): 8656 def __init__(self, loadPropertyUserFeaBeamRowCol: _api.LoadPropertyUserFeaBeamRowCol): 8657 self._Entity = loadPropertyUserFeaBeamRowCol 8658 self._CollectedClass = LoadPropertyUserFeaBeamRow 8659 8660 @property 8661 def LoadPropertyUserFeaBeamRowColList(self) -> tuple[LoadPropertyUserFeaBeamRow]: 8662 return tuple([LoadPropertyUserFeaBeamRow(loadPropertyUserFeaBeamRowCol) for loadPropertyUserFeaBeamRowCol in self._Entity]) 8663 8664 @overload 8665 def DeleteScenario(self, scenarioId: int) -> bool: ... 8666 8667 @overload 8668 def DeleteScenario(self, scenarioName: str) -> bool: ... 8669 8670 @overload 8671 def Get(self, name: str) -> LoadPropertyUserFeaBeamRow: ... 8672 8673 @overload 8674 def Get(self, id: int) -> LoadPropertyUserFeaBeamRow: ... 8675 8676 def DeleteScenario(self, item1 = None) -> bool: 8677 if isinstance(item1, int): 8678 return bool(super().DeleteScenario(item1)) 8679 8680 if isinstance(item1, str): 8681 return bool(super().DeleteScenario(item1)) 8682 8683 return self._Entity.DeleteScenario(item1) 8684 8685 def Get(self, item1 = None) -> LoadPropertyUserFeaBeamRow: 8686 if isinstance(item1, str): 8687 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8688 8689 if isinstance(item1, int): 8690 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8691 8692 return LoadPropertyUserFeaBeamRow(self._Entity.Get(item1)) 8693 8694 def __getitem__(self, index: int): 8695 return self.LoadPropertyUserFeaBeamRowColList[index] 8696 8697 def __iter__(self): 8698 yield from self.LoadPropertyUserFeaBeamRowColList 8699 8700 def __len__(self): 8701 return len(self.LoadPropertyUserFeaBeamRowColList) 8702 8703 8704class LoadPropertyUserFeaBeam(LoadProperty): 8705 def __init__(self, loadPropertyUserFeaBeam: _api.LoadPropertyUserFeaBeam): 8706 self._Entity = loadPropertyUserFeaBeam 8707 8708 @property 8709 def UserFeaRows(self) -> LoadPropertyUserFeaBeamRowCol: 8710 result = self._Entity.UserFeaRows 8711 return LoadPropertyUserFeaBeamRowCol(result) if result is not None else None 8712 8713 8714class LoadPropertyUserFeaJointRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaJointRow]): 8715 def __init__(self, loadPropertyUserFeaJointRowCol: _api.LoadPropertyUserFeaJointRowCol): 8716 self._Entity = loadPropertyUserFeaJointRowCol 8717 self._CollectedClass = LoadPropertyUserFeaJointRow 8718 8719 @property 8720 def LoadPropertyUserFeaJointRowColList(self) -> tuple[LoadPropertyUserFeaJointRow]: 8721 return tuple([LoadPropertyUserFeaJointRow(loadPropertyUserFeaJointRowCol) for loadPropertyUserFeaJointRowCol in self._Entity]) 8722 8723 @overload 8724 def DeleteScenario(self, scenarioId: int) -> bool: ... 8725 8726 @overload 8727 def DeleteScenario(self, scenarioName: str) -> bool: ... 8728 8729 @overload 8730 def Get(self, name: str) -> LoadPropertyUserFeaJointRow: ... 8731 8732 @overload 8733 def Get(self, id: int) -> LoadPropertyUserFeaJointRow: ... 8734 8735 def DeleteScenario(self, item1 = None) -> bool: 8736 if isinstance(item1, int): 8737 return bool(super().DeleteScenario(item1)) 8738 8739 if isinstance(item1, str): 8740 return bool(super().DeleteScenario(item1)) 8741 8742 return self._Entity.DeleteScenario(item1) 8743 8744 def Get(self, item1 = None) -> LoadPropertyUserFeaJointRow: 8745 if isinstance(item1, str): 8746 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8747 8748 if isinstance(item1, int): 8749 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8750 8751 return LoadPropertyUserFeaJointRow(self._Entity.Get(item1)) 8752 8753 def __getitem__(self, index: int): 8754 return self.LoadPropertyUserFeaJointRowColList[index] 8755 8756 def __iter__(self): 8757 yield from self.LoadPropertyUserFeaJointRowColList 8758 8759 def __len__(self): 8760 return len(self.LoadPropertyUserFeaJointRowColList) 8761 8762 8763class LoadPropertyUserFeaJoint(LoadProperty): 8764 def __init__(self, loadPropertyUserFeaJoint: _api.LoadPropertyUserFeaJoint): 8765 self._Entity = loadPropertyUserFeaJoint 8766 8767 @property 8768 def UserFeaRows(self) -> LoadPropertyUserFeaJointRowCol: 8769 result = self._Entity.UserFeaRows 8770 return LoadPropertyUserFeaJointRowCol(result) if result is not None else None 8771 8772 8773class LoadPropertyUserFeaPanelRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaPanelRow]): 8774 def __init__(self, loadPropertyUserFeaPanelRowCol: _api.LoadPropertyUserFeaPanelRowCol): 8775 self._Entity = loadPropertyUserFeaPanelRowCol 8776 self._CollectedClass = LoadPropertyUserFeaPanelRow 8777 8778 @property 8779 def LoadPropertyUserFeaPanelRowColList(self) -> tuple[LoadPropertyUserFeaPanelRow]: 8780 return tuple([LoadPropertyUserFeaPanelRow(loadPropertyUserFeaPanelRowCol) for loadPropertyUserFeaPanelRowCol in self._Entity]) 8781 8782 @overload 8783 def DeleteScenario(self, scenarioId: int) -> bool: ... 8784 8785 @overload 8786 def DeleteScenario(self, scenarioName: str) -> bool: ... 8787 8788 @overload 8789 def Get(self, name: str) -> LoadPropertyUserFeaPanelRow: ... 8790 8791 @overload 8792 def Get(self, id: int) -> LoadPropertyUserFeaPanelRow: ... 8793 8794 def DeleteScenario(self, item1 = None) -> bool: 8795 if isinstance(item1, int): 8796 return bool(super().DeleteScenario(item1)) 8797 8798 if isinstance(item1, str): 8799 return bool(super().DeleteScenario(item1)) 8800 8801 return self._Entity.DeleteScenario(item1) 8802 8803 def Get(self, item1 = None) -> LoadPropertyUserFeaPanelRow: 8804 if isinstance(item1, str): 8805 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8806 8807 if isinstance(item1, int): 8808 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8809 8810 return LoadPropertyUserFeaPanelRow(self._Entity.Get(item1)) 8811 8812 def __getitem__(self, index: int): 8813 return self.LoadPropertyUserFeaPanelRowColList[index] 8814 8815 def __iter__(self): 8816 yield from self.LoadPropertyUserFeaPanelRowColList 8817 8818 def __len__(self): 8819 return len(self.LoadPropertyUserFeaPanelRowColList) 8820 8821 8822class LoadPropertyUserFeaPanel(LoadProperty): 8823 def __init__(self, loadPropertyUserFeaPanel: _api.LoadPropertyUserFeaPanel): 8824 self._Entity = loadPropertyUserFeaPanel 8825 8826 @property 8827 def UserFeaRows(self) -> LoadPropertyUserFeaPanelRowCol: 8828 result = self._Entity.UserFeaRows 8829 return LoadPropertyUserFeaPanelRowCol(result) if result is not None else None 8830 8831 def SetIsZeroCurvature(self, isZeroCurvature: bool) -> None: 8832 return self._Entity.SetIsZeroCurvature(isZeroCurvature) 8833 8834 8835class LoadPropertyUserGeneralDoubleRow(IdNameEntity): 8836 def __init__(self, loadPropertyUserGeneralDoubleRow: _api.LoadPropertyUserGeneralDoubleRow): 8837 self._Entity = loadPropertyUserGeneralDoubleRow 8838 8839 @property 8840 def MechanicalRow(self) -> LoadPropertyUserRow: 8841 thisClass = type(self._Entity.MechanicalRow).__name__ 8842 givenClass = LoadPropertyUserRow 8843 for subclass in LoadPropertyUserRow.__subclasses__(): 8844 if subclass.__name__ == thisClass: 8845 givenClass = subclass 8846 result = self._Entity.MechanicalRow 8847 return givenClass(result) if result is not None else None 8848 8849 @property 8850 def ThermalRow(self) -> LoadPropertyUserRow: 8851 thisClass = type(self._Entity.ThermalRow).__name__ 8852 givenClass = LoadPropertyUserRow 8853 for subclass in LoadPropertyUserRow.__subclasses__(): 8854 if subclass.__name__ == thisClass: 8855 givenClass = subclass 8856 result = self._Entity.ThermalRow 8857 return givenClass(result) if result is not None else None 8858 8859 def SetName(self, name: str) -> None: 8860 return self._Entity.SetName(name) 8861 8862 8863class LoadPropertyUserGeneralBeamDoubleRow(LoadPropertyUserGeneralDoubleRow): 8864 def __init__(self, loadPropertyUserGeneralBeamDoubleRow: _api.LoadPropertyUserGeneralBeamDoubleRow): 8865 self._Entity = loadPropertyUserGeneralBeamDoubleRow 8866 8867 @property 8868 def MechanicalRow(self) -> LoadPropertyUserRow: 8869 thisClass = type(self._Entity.MechanicalRow).__name__ 8870 givenClass = LoadPropertyUserRow 8871 for subclass in LoadPropertyUserRow.__subclasses__(): 8872 if subclass.__name__ == thisClass: 8873 givenClass = subclass 8874 result = self._Entity.MechanicalRow 8875 return givenClass(result) if result is not None else None 8876 8877 @property 8878 def ThermalRow(self) -> LoadPropertyUserRow: 8879 thisClass = type(self._Entity.ThermalRow).__name__ 8880 givenClass = LoadPropertyUserRow 8881 for subclass in LoadPropertyUserRow.__subclasses__(): 8882 if subclass.__name__ == thisClass: 8883 givenClass = subclass 8884 result = self._Entity.ThermalRow 8885 return givenClass(result) if result is not None else None 8886 8887 @property 8888 def M1AType(self) -> types.BoundaryConditionType: 8889 return types.BoundaryConditionType[self._Entity.M1AType.ToString()] 8890 8891 @property 8892 def M2AType(self) -> types.BoundaryConditionType: 8893 return types.BoundaryConditionType[self._Entity.M2AType.ToString()] 8894 8895 @property 8896 def M1BType(self) -> types.BoundaryConditionType: 8897 return types.BoundaryConditionType[self._Entity.M1BType.ToString()] 8898 8899 @property 8900 def M2BType(self) -> types.BoundaryConditionType: 8901 return types.BoundaryConditionType[self._Entity.M2BType.ToString()] 8902 8903 @property 8904 def V1Type(self) -> types.BoundaryConditionType: 8905 return types.BoundaryConditionType[self._Entity.V1Type.ToString()] 8906 8907 @property 8908 def V2Type(self) -> types.BoundaryConditionType: 8909 return types.BoundaryConditionType[self._Entity.V2Type.ToString()] 8910 8911 @property 8912 def AxialType(self) -> types.BoundaryConditionType: 8913 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 8914 8915 @property 8916 def TorqueType(self) -> types.BoundaryConditionType: 8917 return types.BoundaryConditionType[self._Entity.TorqueType.ToString()] 8918 8919 def SetM1AType(self, type: types.BoundaryConditionType) -> None: 8920 return self._Entity.SetM1AType(_types.BoundaryConditionType(type.value)) 8921 8922 def SetM2AType(self, type: types.BoundaryConditionType) -> None: 8923 return self._Entity.SetM2AType(_types.BoundaryConditionType(type.value)) 8924 8925 def SetM1BType(self, type: types.BoundaryConditionType) -> None: 8926 return self._Entity.SetM1BType(_types.BoundaryConditionType(type.value)) 8927 8928 def SetM2BType(self, type: types.BoundaryConditionType) -> None: 8929 return self._Entity.SetM2BType(_types.BoundaryConditionType(type.value)) 8930 8931 def SetV1Type(self, type: types.BoundaryConditionType) -> None: 8932 return self._Entity.SetV1Type(_types.BoundaryConditionType(type.value)) 8933 8934 def SetV2Type(self, type: types.BoundaryConditionType) -> None: 8935 return self._Entity.SetV2Type(_types.BoundaryConditionType(type.value)) 8936 8937 def SetAxialType(self, type: types.BoundaryConditionType) -> None: 8938 return self._Entity.SetAxialType(_types.BoundaryConditionType(type.value)) 8939 8940 def SetTorqueType(self, type: types.BoundaryConditionType) -> None: 8941 return self._Entity.SetTorqueType(_types.BoundaryConditionType(type.value)) 8942 8943 8944class LoadPropertyUserGeneralRowCol(IdNameEntityCol, Generic[T]): 8945 def __init__(self, loadPropertyUserGeneralRowCol: _api.LoadPropertyUserGeneralRowCol): 8946 self._Entity = loadPropertyUserGeneralRowCol 8947 self._CollectedClass = T 8948 8949 @property 8950 def LoadPropertyUserGeneralRowColList(self) -> tuple[T]: 8951 if self._Entity.Count() <= 0: 8952 return () 8953 thisClass = type(self._Entity._items[0]).__name__ 8954 givenClass = T 8955 for subclass in T.__subclasses__(): 8956 if subclass.__name__ == thisClass: 8957 givenClass = subclass 8958 return tuple([givenClass(loadPropertyUserGeneralRowCol) for loadPropertyUserGeneralRowCol in self._Entity]) 8959 8960 def AddScenario(self, name: str = None) -> T: 8961 return self._Entity.AddScenario(name) 8962 8963 @overload 8964 def DeleteScenario(self, scenarioId: int) -> bool: ... 8965 8966 @overload 8967 def DeleteScenario(self, scenarioName: str) -> bool: ... 8968 8969 @overload 8970 def Get(self, name: str) -> T: ... 8971 8972 @overload 8973 def Get(self, id: int) -> T: ... 8974 8975 def DeleteScenario(self, item1 = None) -> bool: 8976 if isinstance(item1, int): 8977 return self._Entity.DeleteScenario(item1) 8978 8979 if isinstance(item1, str): 8980 return self._Entity.DeleteScenario(item1) 8981 8982 return self._Entity.DeleteScenario(item1) 8983 8984 def Get(self, item1 = None) -> T: 8985 if isinstance(item1, str): 8986 return super().Get(item1) 8987 8988 if isinstance(item1, int): 8989 return super().Get(item1) 8990 8991 return self._Entity.Get(item1) 8992 8993 def __getitem__(self, index: int): 8994 return self.LoadPropertyUserGeneralRowColList[index] 8995 8996 def __iter__(self): 8997 yield from self.LoadPropertyUserGeneralRowColList 8998 8999 def __len__(self): 9000 return len(self.LoadPropertyUserGeneralRowColList) 9001 9002 9003class LoadPropertyUserGeneralBeamRowCol(LoadPropertyUserGeneralRowCol[LoadPropertyUserGeneralBeamDoubleRow]): 9004 def __init__(self, loadPropertyUserGeneralBeamRowCol: _api.LoadPropertyUserGeneralBeamRowCol): 9005 self._Entity = loadPropertyUserGeneralBeamRowCol 9006 self._CollectedClass = LoadPropertyUserGeneralBeamDoubleRow 9007 9008 @property 9009 def LoadPropertyUserGeneralBeamRowColList(self) -> tuple[LoadPropertyUserGeneralBeamDoubleRow]: 9010 return tuple([LoadPropertyUserGeneralBeamDoubleRow(loadPropertyUserGeneralBeamRowCol) for loadPropertyUserGeneralBeamRowCol in self._Entity]) 9011 9012 @overload 9013 def DeleteScenario(self, scenarioId: int) -> bool: ... 9014 9015 @overload 9016 def DeleteScenario(self, scenarioName: str) -> bool: ... 9017 9018 @overload 9019 def Get(self, name: str) -> LoadPropertyUserGeneralBeamDoubleRow: ... 9020 9021 @overload 9022 def Get(self, id: int) -> LoadPropertyUserGeneralBeamDoubleRow: ... 9023 9024 def DeleteScenario(self, item1 = None) -> bool: 9025 if isinstance(item1, int): 9026 return bool(super().DeleteScenario(item1)) 9027 9028 if isinstance(item1, str): 9029 return bool(super().DeleteScenario(item1)) 9030 9031 return self._Entity.DeleteScenario(item1) 9032 9033 def Get(self, item1 = None) -> LoadPropertyUserGeneralBeamDoubleRow: 9034 if isinstance(item1, str): 9035 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 9036 9037 if isinstance(item1, int): 9038 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 9039 9040 return LoadPropertyUserGeneralBeamDoubleRow(self._Entity.Get(item1)) 9041 9042 def __getitem__(self, index: int): 9043 return self.LoadPropertyUserGeneralBeamRowColList[index] 9044 9045 def __iter__(self): 9046 yield from self.LoadPropertyUserGeneralBeamRowColList 9047 9048 def __len__(self): 9049 return len(self.LoadPropertyUserGeneralBeamRowColList) 9050 9051 9052class LoadPropertyUserGeneralBeam(LoadProperty): 9053 def __init__(self, loadPropertyUserGeneralBeam: _api.LoadPropertyUserGeneralBeam): 9054 self._Entity = loadPropertyUserGeneralBeam 9055 9056 @property 9057 def UserGeneralRows(self) -> LoadPropertyUserGeneralBeamRowCol: 9058 result = self._Entity.UserGeneralRows 9059 return LoadPropertyUserGeneralBeamRowCol(result) if result is not None else None 9060 9061 @property 9062 def IsIncludingThermal(self) -> bool: 9063 return self._Entity.IsIncludingThermal 9064 9065 @IsIncludingThermal.setter 9066 def IsIncludingThermal(self, value: bool) -> None: 9067 self._Entity.IsIncludingThermal = value 9068 9069 9070class LoadPropertyUserGeneralBoltedRow(IdEntity): 9071 def __init__(self, loadPropertyUserGeneralBoltedRow: _api.LoadPropertyUserGeneralBoltedRow): 9072 self._Entity = loadPropertyUserGeneralBoltedRow 9073 9074 @property 9075 def LoadPropertyId(self) -> int: 9076 return self._Entity.LoadPropertyId 9077 9078 @property 9079 def LoadScenarioId(self) -> int: 9080 return self._Entity.LoadScenarioId 9081 9082 @property 9083 def Fx(self) -> float: 9084 return self._Entity.Fx 9085 9086 @property 9087 def Fy(self) -> float: 9088 return self._Entity.Fy 9089 9090 @property 9091 def Fz(self) -> float: 9092 return self._Entity.Fz 9093 9094 @property 9095 def Mx(self) -> float: 9096 return self._Entity.Mx 9097 9098 @property 9099 def My(self) -> float: 9100 return self._Entity.My 9101 9102 @property 9103 def Mz(self) -> float: 9104 return self._Entity.Mz 9105 9106 @property 9107 def NxBypass(self) -> float: 9108 return self._Entity.NxBypass 9109 9110 @property 9111 def NyBypass(self) -> float: 9112 return self._Entity.NyBypass 9113 9114 @property 9115 def NxyBypass(self) -> float: 9116 return self._Entity.NxyBypass 9117 9118 @property 9119 def LimitFactor(self) -> float: 9120 return self._Entity.LimitFactor 9121 9122 @property 9123 def UltimateFactor(self) -> float: 9124 return self._Entity.UltimateFactor 9125 9126 @Fx.setter 9127 def Fx(self, value: float) -> None: 9128 self._Entity.Fx = value 9129 9130 @Fy.setter 9131 def Fy(self, value: float) -> None: 9132 self._Entity.Fy = value 9133 9134 @Fz.setter 9135 def Fz(self, value: float) -> None: 9136 self._Entity.Fz = value 9137 9138 @Mx.setter 9139 def Mx(self, value: float) -> None: 9140 self._Entity.Mx = value 9141 9142 @My.setter 9143 def My(self, value: float) -> None: 9144 self._Entity.My = value 9145 9146 @Mz.setter 9147 def Mz(self, value: float) -> None: 9148 self._Entity.Mz = value 9149 9150 @NxBypass.setter 9151 def NxBypass(self, value: float) -> None: 9152 self._Entity.NxBypass = value 9153 9154 @NyBypass.setter 9155 def NyBypass(self, value: float) -> None: 9156 self._Entity.NyBypass = value 9157 9158 @NxyBypass.setter 9159 def NxyBypass(self, value: float) -> None: 9160 self._Entity.NxyBypass = value 9161 9162 @LimitFactor.setter 9163 def LimitFactor(self, value: float) -> None: 9164 self._Entity.LimitFactor = value 9165 9166 @UltimateFactor.setter 9167 def UltimateFactor(self, value: float) -> None: 9168 self._Entity.UltimateFactor = value 9169 9170 9171class LoadPropertyUserGeneralBoltedRowCol(IdEntityCol[LoadPropertyUserGeneralBoltedRow]): 9172 def __init__(self, loadPropertyUserGeneralBoltedRowCol: _api.LoadPropertyUserGeneralBoltedRowCol): 9173 self._Entity = loadPropertyUserGeneralBoltedRowCol 9174 self._CollectedClass = LoadPropertyUserGeneralBoltedRow 9175 9176 @property 9177 def LoadPropertyUserGeneralBoltedRowColList(self) -> tuple[LoadPropertyUserGeneralBoltedRow]: 9178 return tuple([LoadPropertyUserGeneralBoltedRow(loadPropertyUserGeneralBoltedRowCol) for loadPropertyUserGeneralBoltedRowCol in self._Entity]) 9179 9180 def AddScenario(self) -> None: 9181 ''' 9182 Adds a load scenario with default values 9183 ''' 9184 return self._Entity.AddScenario() 9185 9186 def DeleteScenario(self, scenarioId: int) -> bool: 9187 return self._Entity.DeleteScenario(scenarioId) 9188 9189 def __getitem__(self, index: int): 9190 return self.LoadPropertyUserGeneralBoltedRowColList[index] 9191 9192 def __iter__(self): 9193 yield from self.LoadPropertyUserGeneralBoltedRowColList 9194 9195 def __len__(self): 9196 return len(self.LoadPropertyUserGeneralBoltedRowColList) 9197 9198 9199class LoadPropertyUserGeneralBolted(LoadProperty): 9200 def __init__(self, loadPropertyUserGeneralBolted: _api.LoadPropertyUserGeneralBolted): 9201 self._Entity = loadPropertyUserGeneralBolted 9202 9203 @property 9204 def UserGeneralBoltedRows(self) -> LoadPropertyUserGeneralBoltedRowCol: 9205 result = self._Entity.UserGeneralBoltedRows 9206 return LoadPropertyUserGeneralBoltedRowCol(result) if result is not None else None 9207 9208 9209class LoadPropertyUserGeneralBondedRow(IdEntity): 9210 def __init__(self, loadPropertyUserGeneralBondedRow: _api.LoadPropertyUserGeneralBondedRow): 9211 self._Entity = loadPropertyUserGeneralBondedRow 9212 9213 @property 9214 def LoadPropertyId(self) -> int: 9215 return self._Entity.LoadPropertyId 9216 9217 @property 9218 def JointConceptId(self) -> types.JointConceptId: 9219 return types.JointConceptId[self._Entity.JointConceptId.ToString()] 9220 9221 @property 9222 def BondedBcId(self) -> int: 9223 return self._Entity.BondedBcId 9224 9225 @property 9226 def AxialType(self) -> types.BoundaryConditionType: 9227 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 9228 9229 @property 9230 def MomentType(self) -> types.BoundaryConditionType: 9231 return types.BoundaryConditionType[self._Entity.MomentType.ToString()] 9232 9233 @property 9234 def TransverseType(self) -> types.BoundaryConditionType: 9235 return types.BoundaryConditionType[self._Entity.TransverseType.ToString()] 9236 9237 @property 9238 def ShearType(self) -> types.BoundaryConditionType: 9239 return types.BoundaryConditionType[self._Entity.ShearType.ToString()] 9240 9241 @property 9242 def Axial(self) -> float: 9243 return self._Entity.Axial 9244 9245 @property 9246 def Moment(self) -> float: 9247 return self._Entity.Moment 9248 9249 @property 9250 def Transverse(self) -> float: 9251 return self._Entity.Transverse 9252 9253 @property 9254 def Shear(self) -> float: 9255 return self._Entity.Shear 9256 9257 @AxialType.setter 9258 def AxialType(self, value: types.BoundaryConditionType) -> None: 9259 self._Entity.AxialType = _types.BoundaryConditionType(value.value) 9260 9261 @MomentType.setter 9262 def MomentType(self, value: types.BoundaryConditionType) -> None: 9263 self._Entity.MomentType = _types.BoundaryConditionType(value.value) 9264 9265 @TransverseType.setter 9266 def TransverseType(self, value: types.BoundaryConditionType) -> None: 9267 self._Entity.TransverseType = _types.BoundaryConditionType(value.value) 9268 9269 @ShearType.setter 9270 def ShearType(self, value: types.BoundaryConditionType) -> None: 9271 self._Entity.ShearType = _types.BoundaryConditionType(value.value) 9272 9273 @Axial.setter 9274 def Axial(self, value: float) -> None: 9275 self._Entity.Axial = value 9276 9277 @Moment.setter 9278 def Moment(self, value: float) -> None: 9279 self._Entity.Moment = value 9280 9281 @Transverse.setter 9282 def Transverse(self, value: float) -> None: 9283 self._Entity.Transverse = value 9284 9285 @Shear.setter 9286 def Shear(self, value: float) -> None: 9287 self._Entity.Shear = value 9288 9289 def UpdateRow(self) -> None: 9290 return self._Entity.UpdateRow() 9291 9292 9293class LoadPropertyUserGeneralBondedRowCol(IdEntityCol[LoadPropertyUserGeneralBondedRow]): 9294 def __init__(self, loadPropertyUserGeneralBondedRowCol: _api.LoadPropertyUserGeneralBondedRowCol): 9295 self._Entity = loadPropertyUserGeneralBondedRowCol 9296 self._CollectedClass = LoadPropertyUserGeneralBondedRow 9297 9298 @property 9299 def LoadPropertyUserGeneralBondedRowColList(self) -> tuple[LoadPropertyUserGeneralBondedRow]: 9300 return tuple([LoadPropertyUserGeneralBondedRow(loadPropertyUserGeneralBondedRowCol) for loadPropertyUserGeneralBondedRowCol in self._Entity]) 9301 9302 def __getitem__(self, index: int): 9303 return self.LoadPropertyUserGeneralBondedRowColList[index] 9304 9305 def __iter__(self): 9306 yield from self.LoadPropertyUserGeneralBondedRowColList 9307 9308 def __len__(self): 9309 return len(self.LoadPropertyUserGeneralBondedRowColList) 9310 9311 9312class LoadPropertyJoint(IdEntity): 9313 def __init__(self, loadPropertyJoint: _api.LoadPropertyJoint): 9314 self._Entity = loadPropertyJoint 9315 9316 @property 9317 def UserGeneralBondedRows(self) -> LoadPropertyUserGeneralBondedRowCol: 9318 result = self._Entity.UserGeneralBondedRows 9319 return LoadPropertyUserGeneralBondedRowCol(result) if result is not None else None 9320 9321 @property 9322 def LoadPropertyId(self) -> int: 9323 return self._Entity.LoadPropertyId 9324 9325 @property 9326 def JConceptId(self) -> types.JointConceptId: 9327 return types.JointConceptId[self._Entity.JConceptId.ToString()] 9328 9329 @property 9330 def Ex(self) -> float: 9331 return self._Entity.Ex 9332 9333 @property 9334 def Kx(self) -> float: 9335 return self._Entity.Kx 9336 9337 @property 9338 def Kxy(self) -> float: 9339 return self._Entity.Kxy 9340 9341 @property 9342 def Temperature(self) -> float: 9343 return self._Entity.Temperature 9344 9345 @JConceptId.setter 9346 def JConceptId(self, value: types.JointConceptId) -> None: 9347 self._Entity.JConceptId = _types.JointConceptId(value.value) 9348 9349 @Ex.setter 9350 def Ex(self, value: float) -> None: 9351 self._Entity.Ex = value 9352 9353 @Kx.setter 9354 def Kx(self, value: float) -> None: 9355 self._Entity.Kx = value 9356 9357 @Kxy.setter 9358 def Kxy(self, value: float) -> None: 9359 self._Entity.Kxy = value 9360 9361 @Temperature.setter 9362 def Temperature(self, value: float) -> None: 9363 self._Entity.Temperature = value 9364 9365 9366class LoadPropertyUserGeneralBonded(LoadProperty): 9367 def __init__(self, loadPropertyUserGeneralBonded: _api.LoadPropertyUserGeneralBonded): 9368 self._Entity = loadPropertyUserGeneralBonded 9369 9370 @property 9371 def LoadPropertyJoint(self) -> LoadPropertyJoint: 9372 result = self._Entity.LoadPropertyJoint 9373 return LoadPropertyJoint(result) if result is not None else None 9374 9375 9376class LoadPropertyUserGeneralPanelDoubleRow(LoadPropertyUserGeneralDoubleRow): 9377 def __init__(self, loadPropertyUserGeneralPanelDoubleRow: _api.LoadPropertyUserGeneralPanelDoubleRow): 9378 self._Entity = loadPropertyUserGeneralPanelDoubleRow 9379 9380 @property 9381 def MechanicalRow(self) -> LoadPropertyUserRow: 9382 thisClass = type(self._Entity.MechanicalRow).__name__ 9383 givenClass = LoadPropertyUserRow 9384 for subclass in LoadPropertyUserRow.__subclasses__(): 9385 if subclass.__name__ == thisClass: 9386 givenClass = subclass 9387 result = self._Entity.MechanicalRow 9388 return givenClass(result) if result is not None else None 9389 9390 @property 9391 def ThermalRow(self) -> LoadPropertyUserRow: 9392 thisClass = type(self._Entity.ThermalRow).__name__ 9393 givenClass = LoadPropertyUserRow 9394 for subclass in LoadPropertyUserRow.__subclasses__(): 9395 if subclass.__name__ == thisClass: 9396 givenClass = subclass 9397 result = self._Entity.ThermalRow 9398 return givenClass(result) if result is not None else None 9399 9400 @property 9401 def NxType(self) -> types.BoundaryConditionType: 9402 return types.BoundaryConditionType[self._Entity.NxType.ToString()] 9403 9404 @property 9405 def NyType(self) -> types.BoundaryConditionType: 9406 return types.BoundaryConditionType[self._Entity.NyType.ToString()] 9407 9408 @property 9409 def NxyType(self) -> types.BoundaryConditionType: 9410 return types.BoundaryConditionType[self._Entity.NxyType.ToString()] 9411 9412 @property 9413 def MxType(self) -> types.BoundaryConditionType: 9414 return types.BoundaryConditionType[self._Entity.MxType.ToString()] 9415 9416 @property 9417 def MyType(self) -> types.BoundaryConditionType: 9418 return types.BoundaryConditionType[self._Entity.MyType.ToString()] 9419 9420 @property 9421 def MxyType(self) -> types.BoundaryConditionType: 9422 return types.BoundaryConditionType[self._Entity.MxyType.ToString()] 9423 9424 @property 9425 def QxType(self) -> types.BoundaryConditionType: 9426 return types.BoundaryConditionType[self._Entity.QxType.ToString()] 9427 9428 @property 9429 def QyType(self) -> types.BoundaryConditionType: 9430 return types.BoundaryConditionType[self._Entity.QyType.ToString()] 9431 9432 def SetNxType(self, type: types.BoundaryConditionType) -> None: 9433 return self._Entity.SetNxType(_types.BoundaryConditionType(type.value)) 9434 9435 def SetNyType(self, type: types.BoundaryConditionType) -> None: 9436 return self._Entity.SetNyType(_types.BoundaryConditionType(type.value)) 9437 9438 def SetNxyType(self, type: types.BoundaryConditionType) -> None: 9439 return self._Entity.SetNxyType(_types.BoundaryConditionType(type.value)) 9440 9441 def SetMxType(self, type: types.BoundaryConditionType) -> None: 9442 return self._Entity.SetMxType(_types.BoundaryConditionType(type.value)) 9443 9444 def SetMyType(self, type: types.BoundaryConditionType) -> None: 9445 return self._Entity.SetMyType(_types.BoundaryConditionType(type.value)) 9446 9447 def SetMxyType(self, type: types.BoundaryConditionType) -> None: 9448 return self._Entity.SetMxyType(_types.BoundaryConditionType(type.value)) 9449 9450 def SetQxType(self, type: types.BoundaryConditionType) -> None: 9451 return self._Entity.SetQxType(_types.BoundaryConditionType(type.value)) 9452 9453 def SetQyType(self, type: types.BoundaryConditionType) -> None: 9454 return self._Entity.SetQyType(_types.BoundaryConditionType(type.value)) 9455 9456 9457class LoadPropertyUserGeneralPanelRowCol(LoadPropertyUserGeneralRowCol[LoadPropertyUserGeneralPanelDoubleRow]): 9458 def __init__(self, loadPropertyUserGeneralPanelRowCol: _api.LoadPropertyUserGeneralPanelRowCol): 9459 self._Entity = loadPropertyUserGeneralPanelRowCol 9460 self._CollectedClass = LoadPropertyUserGeneralPanelDoubleRow 9461 9462 @property 9463 def LoadPropertyUserGeneralPanelRowColList(self) -> tuple[LoadPropertyUserGeneralPanelDoubleRow]: 9464 return tuple([LoadPropertyUserGeneralPanelDoubleRow(loadPropertyUserGeneralPanelRowCol) for loadPropertyUserGeneralPanelRowCol in self._Entity]) 9465 9466 @overload 9467 def DeleteScenario(self, scenarioId: int) -> bool: ... 9468 9469 @overload 9470 def DeleteScenario(self, scenarioName: str) -> bool: ... 9471 9472 @overload 9473 def Get(self, name: str) -> LoadPropertyUserGeneralPanelDoubleRow: ... 9474 9475 @overload 9476 def Get(self, id: int) -> LoadPropertyUserGeneralPanelDoubleRow: ... 9477 9478 def DeleteScenario(self, item1 = None) -> bool: 9479 if isinstance(item1, int): 9480 return bool(super().DeleteScenario(item1)) 9481 9482 if isinstance(item1, str): 9483 return bool(super().DeleteScenario(item1)) 9484 9485 return self._Entity.DeleteScenario(item1) 9486 9487 def Get(self, item1 = None) -> LoadPropertyUserGeneralPanelDoubleRow: 9488 if isinstance(item1, str): 9489 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9490 9491 if isinstance(item1, int): 9492 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9493 9494 return LoadPropertyUserGeneralPanelDoubleRow(self._Entity.Get(item1)) 9495 9496 def __getitem__(self, index: int): 9497 return self.LoadPropertyUserGeneralPanelRowColList[index] 9498 9499 def __iter__(self): 9500 yield from self.LoadPropertyUserGeneralPanelRowColList 9501 9502 def __len__(self): 9503 return len(self.LoadPropertyUserGeneralPanelRowColList) 9504 9505 9506class LoadPropertyUserGeneralPanel(LoadProperty): 9507 def __init__(self, loadPropertyUserGeneralPanel: _api.LoadPropertyUserGeneralPanel): 9508 self._Entity = loadPropertyUserGeneralPanel 9509 9510 @property 9511 def UserGeneralRows(self) -> LoadPropertyUserGeneralPanelRowCol: 9512 result = self._Entity.UserGeneralRows 9513 return LoadPropertyUserGeneralPanelRowCol(result) if result is not None else None 9514 9515 @property 9516 def IsIncludingThermal(self) -> bool: 9517 return self._Entity.IsIncludingThermal 9518 9519 @IsIncludingThermal.setter 9520 def IsIncludingThermal(self, value: bool) -> None: 9521 self._Entity.IsIncludingThermal = value 9522 9523 def SetIsZeroCurvature(self, isZeroCurvature: bool) -> None: 9524 return self._Entity.SetIsZeroCurvature(isZeroCurvature) 9525 9526 9527class JointSelectionDesignResult(JointDesignResult): 9528 def __init__(self, jointSelectionDesignResult: _api.JointSelectionDesignResult): 9529 self._Entity = jointSelectionDesignResult 9530 9531 @property 9532 def JointSelectionId(self) -> types.JointSelectionId: 9533 return types.JointSelectionId[self._Entity.JointSelectionId.ToString()] 9534 9535 9536class JointFastenerDesignResult(JointSelectionDesignResult): 9537 def __init__(self, jointFastenerDesignResult: _api.JointFastenerDesignResult): 9538 self._Entity = jointFastenerDesignResult 9539 9540 @property 9541 def FastenerBoltId(self) -> int: 9542 return self._Entity.FastenerBoltId 9543 9544 @property 9545 def FastenerCodeId(self) -> int: 9546 return self._Entity.FastenerCodeId 9547 9548 9549class JointMaterialDesignResult(JointSelectionDesignResult): 9550 def __init__(self, jointMaterialDesignResult: _api.JointMaterialDesignResult): 9551 self._Entity = jointMaterialDesignResult 9552 9553 @property 9554 def MaterialId(self) -> int: 9555 return self._Entity.MaterialId 9556 9557 @property 9558 def MaterialType(self) -> types.MaterialType: 9559 ''' 9560 Represents a material's type. 9561 ''' 9562 return types.MaterialType[self._Entity.MaterialType.ToString()] 9563 9564 9565class JointRangeDesignResult(JointDesignResult): 9566 def __init__(self, jointRangeDesignResult: _api.JointRangeDesignResult): 9567 self._Entity = jointRangeDesignResult 9568 9569 @property 9570 def JointRangeId(self) -> types.JointRangeId: 9571 return types.JointRangeId[self._Entity.JointRangeId.ToString()] 9572 9573 @property 9574 def Value(self) -> float: 9575 return self._Entity.Value 9576 9577 9578class JointRivetDesignResult(JointSelectionDesignResult): 9579 def __init__(self, jointRivetDesignResult: _api.JointRivetDesignResult): 9580 self._Entity = jointRivetDesignResult 9581 9582 @property 9583 def RivetId(self) -> int: 9584 return self._Entity.RivetId 9585 9586 @property 9587 def RivetDiameterId(self) -> int: 9588 return self._Entity.RivetDiameterId 9589 9590 9591class Environment(ABC): 9592 ''' 9593 Represents HyperX's execution environment (where HyperX is installed). 9594 ''' 9595 def __init__(self, environment: _api.Environment): 9596 self._Entity = environment 9597 9598 def SetLocation(location: str) -> None: 9599 return _api.Environment.SetLocation(location) 9600 9601 def Initialize() -> None: 9602 ''' 9603 Initialize the HyperX scripting environment. 9604 ''' 9605 return _api.Environment.Initialize() 9606 9607 9608class FailureCriterionSetting(FailureSetting): 9609 ''' 9610 Setting for a Failure Criteria. 9611 ''' 9612 def __init__(self, failureCriterionSetting: _api.FailureCriterionSetting): 9613 self._Entity = failureCriterionSetting 9614 9615 9616class FailureModeSetting(FailureSetting): 9617 ''' 9618 Setting for a Failure Mode. 9619 ''' 9620 def __init__(self, failureModeSetting: _api.FailureModeSetting): 9621 self._Entity = failureModeSetting 9622 9623 9624class HelperFunctions(ABC): 9625 def __init__(self, helperFunctions: _api.HelperFunctions): 9626 self._Entity = helperFunctions 9627 9628 def NullableSingle(input: float) -> float: 9629 return _api.HelperFunctions.NullableSingle(input) 9630 9631 9632class IBulkUpdatableEntity: 9633 def __init__(self, iBulkUpdatableEntity: _api.IBulkUpdatableEntity): 9634 self._Entity = iBulkUpdatableEntity 9635 9636 pass 9637 9638 9639class LaminatePlyData: 9640 ''' 9641 Per ply data for Laminate materials 9642 ''' 9643 def __init__(self, laminatePlyData: _api.LaminatePlyData): 9644 self._Entity = laminatePlyData 9645 9646 @property 9647 def MaterialId(self) -> int: 9648 return self._Entity.MaterialId 9649 9650 @property 9651 def PlyId(self) -> int: 9652 return self._Entity.PlyId 9653 9654 @property 9655 def PlyMaterialId(self) -> int: 9656 return self._Entity.PlyMaterialId 9657 9658 @property 9659 def PlyMaterialType(self) -> types.MaterialType: 9660 ''' 9661 Represents a material's type. 9662 ''' 9663 return types.MaterialType[self._Entity.PlyMaterialType.ToString()] 9664 9665 @property 9666 def Angle(self) -> float: 9667 return self._Entity.Angle 9668 9669 @property 9670 def Thickness(self) -> float: 9671 return self._Entity.Thickness 9672 9673 @property 9674 def IsFabric(self) -> bool: 9675 return self._Entity.IsFabric 9676 9677 @property 9678 def FamilyPlyId(self) -> int: 9679 return self._Entity.FamilyPlyId 9680 9681 @property 9682 def OriginalPlyId(self) -> int: 9683 return self._Entity.OriginalPlyId 9684 9685 @property 9686 def OriginalFamilyPlyId(self) -> int: 9687 return self._Entity.OriginalFamilyPlyId 9688 9689 @property 9690 def DisplaySequenceId(self) -> int: 9691 return self._Entity.DisplaySequenceId 9692 9693 @property 9694 def PlyStiffenerSubType(self) -> types.PlyStiffenerSubType: 9695 return types.PlyStiffenerSubType[self._Entity.PlyStiffenerSubType.ToString()] 9696 9697 @property 9698 def Object1(self) -> bool: 9699 return self._Entity.Object1 9700 9701 @property 9702 def Object2(self) -> bool: 9703 return self._Entity.Object2 9704 9705 @property 9706 def Object3(self) -> bool: 9707 return self._Entity.Object3 9708 9709 @property 9710 def IsInverted(self) -> bool: 9711 return self._Entity.IsInverted 9712 9713 @property 9714 def IsFullStructure(self) -> bool: 9715 return self._Entity.IsFullStructure 9716 9717 @property 9718 def UseTrueFiberDirection(self) -> bool: 9719 return self._Entity.UseTrueFiberDirection 9720 9721 @property 9722 def IsInFoot(self) -> bool: 9723 return self._Entity.IsInFoot 9724 9725 @property 9726 def IsInWeb(self) -> bool: 9727 return self._Entity.IsInWeb 9728 9729 @property 9730 def IsInCap(self) -> bool: 9731 return self._Entity.IsInCap 9732 9733 def SetMaterial(self, matId: int) -> bool: 9734 return self._Entity.SetMaterial(matId) 9735 9736 def SetAngle(self, angle: float) -> bool: 9737 return self._Entity.SetAngle(angle) 9738 9739 9740class Beam(Zone): 9741 def __init__(self, beam: _api.Beam): 9742 self._Entity = beam 9743 9744 @property 9745 def Length(self) -> float: 9746 return self._Entity.Length 9747 9748 @property 9749 def Phi(self) -> float: 9750 return self._Entity.Phi 9751 9752 @property 9753 def K1(self) -> float: 9754 return self._Entity.K1 9755 9756 @property 9757 def K2(self) -> float: 9758 return self._Entity.K2 9759 9760 @property 9761 def ReferencePlane(self) -> types.ReferencePlaneBeam: 9762 return types.ReferencePlaneBeam[self._Entity.ReferencePlane.ToString()] 9763 9764 @Phi.setter 9765 def Phi(self, value: float) -> None: 9766 self._Entity.Phi = value 9767 9768 @K1.setter 9769 def K1(self, value: float) -> None: 9770 self._Entity.K1 = value 9771 9772 @K2.setter 9773 def K2(self, value: float) -> None: 9774 self._Entity.K2 = value 9775 9776 @ReferencePlane.setter 9777 def ReferencePlane(self, value: types.ReferencePlaneBeam) -> None: 9778 self._Entity.ReferencePlane = _types.ReferencePlaneBeam(value.value) 9779 9780 9781class ZoneBulkUpdaterBase(BulkUpdaterBase): 9782 def __init__(self, zoneBulkUpdaterBase: _api.ZoneBulkUpdaterBase): 9783 self._Entity = zoneBulkUpdaterBase 9784 9785 9786class BeamBulkUpdater(ZoneBulkUpdaterBase): 9787 def __init__(self, beamBulkUpdater: _api.BeamBulkUpdater): 9788 self._Entity = beamBulkUpdater 9789 9790 def GetBulkUpdater(application: Application, items: list[Beam]) -> BeamBulkUpdater: 9791 itemsList = List[_api.Beam]() 9792 if items is not None: 9793 for thing in items: 9794 if thing is not None: 9795 itemsList.Add(thing._Entity) 9796 return BeamBulkUpdater(_api.BeamBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 9797 9798 9799class Panel(Zone): 9800 def __init__(self, panel: _api.Panel): 9801 self._Entity = panel 9802 9803 @property 9804 def Area(self) -> float: 9805 return self._Entity.Area 9806 9807 @property 9808 def ReferencePlane(self) -> types.ReferencePlanePanel: 9809 return types.ReferencePlanePanel[self._Entity.ReferencePlane.ToString()] 9810 9811 @property 9812 def AddedOffset(self) -> float: 9813 return self._Entity.AddedOffset 9814 9815 @property 9816 def YSpan(self) -> float: 9817 return self._Entity.YSpan 9818 9819 @property 9820 def IsCurved(self) -> bool: 9821 return self._Entity.IsCurved 9822 9823 @property 9824 def Radius(self) -> float: 9825 return self._Entity.Radius 9826 9827 @property 9828 def IsFullCylinder(self) -> bool: 9829 return self._Entity.IsFullCylinder 9830 9831 @property 9832 def BucklingMode(self) -> types.ZoneBucklingMode: 9833 return types.ZoneBucklingMode[self._Entity.BucklingMode.ToString()] 9834 9835 @property 9836 def PerformLocalPostbuckling(self) -> bool: 9837 return self._Entity.PerformLocalPostbuckling 9838 9839 @property 9840 def A11Required(self) -> float: 9841 return self._Entity.A11Required 9842 9843 @property 9844 def A22Required(self) -> float: 9845 return self._Entity.A22Required 9846 9847 @property 9848 def A33Required(self) -> float: 9849 return self._Entity.A33Required 9850 9851 @property 9852 def D11Required(self) -> float: 9853 return self._Entity.D11Required 9854 9855 @property 9856 def D22Required(self) -> float: 9857 return self._Entity.D22Required 9858 9859 @property 9860 def D33Required(self) -> float: 9861 return self._Entity.D33Required 9862 9863 @property 9864 def A11Auto(self) -> float: 9865 return self._Entity.A11Auto 9866 9867 @property 9868 def A22Auto(self) -> float: 9869 return self._Entity.A22Auto 9870 9871 @property 9872 def A33Auto(self) -> float: 9873 return self._Entity.A33Auto 9874 9875 @property 9876 def D11Auto(self) -> float: 9877 return self._Entity.D11Auto 9878 9879 @property 9880 def D22Auto(self) -> float: 9881 return self._Entity.D22Auto 9882 9883 @property 9884 def D33Auto(self) -> float: 9885 return self._Entity.D33Auto 9886 9887 @property 9888 def Ey(self) -> float: 9889 return self._Entity.Ey 9890 9891 @property 9892 def Kx(self) -> float: 9893 return self._Entity.Kx 9894 9895 @property 9896 def Ky(self) -> float: 9897 return self._Entity.Ky 9898 9899 @property 9900 def HoneycombCoreAngle(self) -> float: 9901 return self._Entity.HoneycombCoreAngle 9902 9903 @ReferencePlane.setter 9904 def ReferencePlane(self, value: types.ReferencePlanePanel) -> None: 9905 self._Entity.ReferencePlane = _types.ReferencePlanePanel(value.value) 9906 9907 @AddedOffset.setter 9908 def AddedOffset(self, value: float) -> None: 9909 self._Entity.AddedOffset = value 9910 9911 @YSpan.setter 9912 def YSpan(self, value: float) -> None: 9913 self._Entity.YSpan = value 9914 9915 @IsCurved.setter 9916 def IsCurved(self, value: bool) -> None: 9917 self._Entity.IsCurved = value 9918 9919 @Radius.setter 9920 def Radius(self, value: float) -> None: 9921 self._Entity.Radius = value 9922 9923 @IsFullCylinder.setter 9924 def IsFullCylinder(self, value: bool) -> None: 9925 self._Entity.IsFullCylinder = value 9926 9927 @BucklingMode.setter 9928 def BucklingMode(self, value: types.ZoneBucklingMode) -> None: 9929 self._Entity.BucklingMode = _types.ZoneBucklingMode(value.value) 9930 9931 @PerformLocalPostbuckling.setter 9932 def PerformLocalPostbuckling(self, value: bool) -> None: 9933 self._Entity.PerformLocalPostbuckling = value 9934 9935 @A11Required.setter 9936 def A11Required(self, value: float) -> None: 9937 self._Entity.A11Required = value 9938 9939 @A22Required.setter 9940 def A22Required(self, value: float) -> None: 9941 self._Entity.A22Required = value 9942 9943 @A33Required.setter 9944 def A33Required(self, value: float) -> None: 9945 self._Entity.A33Required = value 9946 9947 @D11Required.setter 9948 def D11Required(self, value: float) -> None: 9949 self._Entity.D11Required = value 9950 9951 @D22Required.setter 9952 def D22Required(self, value: float) -> None: 9953 self._Entity.D22Required = value 9954 9955 @D33Required.setter 9956 def D33Required(self, value: float) -> None: 9957 self._Entity.D33Required = value 9958 9959 @Ey.setter 9960 def Ey(self, value: float) -> None: 9961 self._Entity.Ey = value 9962 9963 @Kx.setter 9964 def Kx(self, value: float) -> None: 9965 self._Entity.Kx = value 9966 9967 @Ky.setter 9968 def Ky(self, value: float) -> None: 9969 self._Entity.Ky = value 9970 9971 @HoneycombCoreAngle.setter 9972 def HoneycombCoreAngle(self, value: float) -> None: 9973 self._Entity.HoneycombCoreAngle = value 9974 9975 9976class PanelBulkUpdater(ZoneBulkUpdaterBase): 9977 def __init__(self, panelBulkUpdater: _api.PanelBulkUpdater): 9978 self._Entity = panelBulkUpdater 9979 9980 def GetBulkUpdater(application: Application, items: list[Panel]) -> PanelBulkUpdater: 9981 itemsList = List[_api.Panel]() 9982 if items is not None: 9983 for thing in items: 9984 if thing is not None: 9985 itemsList.Add(thing._Entity) 9986 return PanelBulkUpdater(_api.PanelBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 9987 9988 9989class PanelSegmentBulkUpdater(ZoneBulkUpdaterBase): 9990 def __init__(self, panelSegmentBulkUpdater: _api.PanelSegmentBulkUpdater): 9991 self._Entity = panelSegmentBulkUpdater 9992 9993 def GetBulkUpdater(application: Application, items: list[PanelSegment]) -> PanelSegmentBulkUpdater: 9994 itemsList = List[_api.PanelSegment]() 9995 if items is not None: 9996 for thing in items: 9997 if thing is not None: 9998 itemsList.Add(thing._Entity) 9999 return PanelSegmentBulkUpdater(_api.PanelSegmentBulkUpdater.GetBulkUpdater(application._Entity, itemsList)) 10000 10001 10002class ZoneBulkUpdater(ZoneBulkUpdaterBase): 10003 def __init__(self, zoneBulkUpdater: _api.ZoneBulkUpdater): 10004 self._Entity = zoneBulkUpdater 10005 10006 def GetBulkUpdater(application: Application, items: list[Zone]) -> ZoneBulkUpdater: 10007 itemsList = List[_api.Zone]() 10008 if items is not None: 10009 for thing in items: 10010 if thing is not None: 10011 itemsList.Add(thing._Entity) 10012 return ZoneBulkUpdater(_api.ZoneBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
25class AnalysisResultToReturn(Enum): 26 ''' 27 Used to specify which analysis result to return. 28 ''' 29 Limit = 1 30 Ultimate = 2 31 Minimum = 3
Used to specify which analysis result to return.
Inherited Members
- enum.Enum
- name
- value
33class CollectionModificationStatus(Enum): 34 ''' 35 Indicates whether a collection was manipulated successfully. 36 ''' 37 Success = 1 38 DuplicateIdFailure = 2 39 EntityMissingAddFailure = 3 40 EntityMissingRemovalFailure = 4 41 FemConnectionFailure = 5 42 RunSetUsageFailure = 6 43 EntityRemovalDependencyFailure = 7
Indicates whether a collection was manipulated successfully.
Inherited Members
- enum.Enum
- name
- value
Inherited Members
- enum.Enum
- name
- value
50class MaterialCreationStatus(Enum): 51 ''' 52 Indicates whether a material was created successfully. 53 If not, this indicates why the material was not created. 54 ''' 55 Success = 1 56 DuplicateNameFailure = 2 57 DuplicateFemIdFailure = 3 58 MissingMaterialToCopy = 4
Indicates whether a material was created successfully. If not, this indicates why the material was not created.
Inherited Members
- enum.Enum
- name
- value
Inherited Members
- enum.Enum
- name
- value
65class DbLengthUnit(Enum): 66 Inches = 1 67 Feet = 2 68 Meters = 3 69 Centimeters = 4 70 Millimeters = 5
Inherited Members
- enum.Enum
- name
- value
72class DbMassUnit(Enum): 73 Pounds = 1 74 Kilograms = 2 75 Slinches = 4 76 Slugs = 5 77 Megagrams = 6
Inherited Members
- enum.Enum
- name
- value
Inherited Members
- enum.Enum
- name
- value
85class ProjectCreationStatus(Enum): 86 ''' 87 Indicates whether a project was created successfully. 88 If not, this indicates why the project was not created. 89 ''' 90 Success = 1 91 Failure = 2 92 DuplicateNameFailure = 3
Indicates whether a project was created successfully. If not, this indicates why the project was not created.
Inherited Members
- enum.Enum
- name
- value
94class ProjectDeletionStatus(Enum): 95 ''' 96 Indicates whether a project was deleted successfully. 97 If not, this indicates why the project was not deleted. 98 ''' 99 Success = 1 100 Failure = 2 101 ProjectDoesNotExistFailure = 3 102 ActiveProjectFailure = 4
Indicates whether a project was deleted successfully. If not, this indicates why the project was not deleted.
Inherited Members
- enum.Enum
- name
- value
Inherited Members
- enum.Enum
- name
- value
109class PropertyAssignmentStatus(Enum): 110 Success = 1 111 Failure = 2 112 FailureCollectionAssignment = 3 113 PropertyIsNull = 4 114 PropertyNotFoundInDb = 5 115 EmptyCollection = 6 116 IncompatiblePropertyAssignment = 7 117 EntityDoesNotExist = 8
Inherited Members
- enum.Enum
- name
- value
119class RundeckBulkUpdateStatus(Enum): 120 NoRundecksUpdated = 0 121 Success = 1 122 InputFilePathDoesNotExist = 2 123 ResultFilePathDoesNotExist = 3 124 InputFilePathAlreadyExists = 4 125 ResultFilePathAlreadyExists = 5 126 InvalidPathCount = 6 127 RundeckBulkUpdateFailure = 7 128 SuccessButIncompatibleFem = 8
Inherited Members
- enum.Enum
- name
- value
130class RundeckCreationStatus(Enum): 131 Success = 1 132 InputFilePathAlreadyExists = 2 133 ResultFilePathAlreadyExists = 3
Inherited Members
- enum.Enum
- name
- value
135class RundeckRemoveStatus(Enum): 136 Success = 1 137 InvalidId = 2 138 CannotRemoveLastRundeck = 3 139 CannotDeletePrimaryRundeck = 4 140 RundeckNotFound = 5 141 RundeckRemoveFailure = 6 142 SuccessButIncompatibleFem = 7
Inherited Members
- enum.Enum
- name
- value
144class RundeckUpdateStatus(Enum): 145 Success = 1 146 InvalidId = 2 147 IdDoesNotExist = 3 148 RundeckAlreadyPrimary = 4 149 InputPathInUse = 5 150 ResultPathInUse = 6 151 RundeckCommitFailure = 7 152 InputPathDoesNotExist = 8 153 ResultPathDoesNotExist = 9 154 SuccessButIncompatibleFem = 10
Inherited Members
- enum.Enum
- name
- value
156class ZoneCreationStatus(Enum): 157 ''' 158 Indicates whether a zone was created successfully. 159 If not, this indicates why the zone was not created. 160 ''' 161 Success = 1 162 DuplicateNameFailure = 2 163 InvalidFamilyCategory = 3
Indicates whether a zone was created successfully. If not, this indicates why the zone was not created.
Inherited Members
- enum.Enum
- name
- value
165class ZoneIdUpdateStatus(Enum): 166 Success = 1 167 DuplicateIdFailure = 2 168 IdOutOfRangeError = 3
Inherited Members
- enum.Enum
- name
- value
170class UnitSystem(Enum): 171 ''' 172 Unit system specified when starting a scripting Application. 173 ''' 174 English = 1 175 SI = 2
Unit system specified when starting a scripting Application.
Inherited Members
- enum.Enum
- name
- value
177class IdEntity(ABC): 178 ''' 179 Represents an entity with an ID. 180 ''' 181 def __init__(self, idEntity: _api.IdEntity): 182 self._Entity = idEntity 183 184 @property 185 def Id(self) -> int: 186 return self._Entity.Id
Represents an entity with an ID.
189class IdNameEntity(IdEntity): 190 ''' 191 Represents an entity with an ID and Name. 192 ''' 193 def __init__(self, idNameEntity: _api.IdNameEntity): 194 self._Entity = idNameEntity 195 196 @property 197 def Name(self) -> str: 198 return self._Entity.Name
Represents an entity with an ID and Name.
200class AnalysisDefinition(IdNameEntity): 201 def __init__(self, analysisDefinition: _api.AnalysisDefinition): 202 self._Entity = analysisDefinition 203 204 @property 205 def AnalysisId(self) -> int: 206 return self._Entity.AnalysisId 207 208 @property 209 def Description(self) -> str: 210 return self._Entity.Description
Represents an entity with an ID and Name.
Inherited Members
213class Margin: 214 ''' 215 Represents a Margin result. 216 ''' 217 def __init__(self, margin: _api.Margin): 218 self._Entity = margin 219 220 @property 221 def AdjustedMargin(self) -> float: 222 return self._Entity.AdjustedMargin 223 224 @property 225 def IsFailureCode(self) -> bool: 226 return self._Entity.IsFailureCode 227 228 @property 229 def IsInformationalCode(self) -> bool: 230 return self._Entity.IsInformationalCode 231 232 @property 233 def MarginCode(self) -> types.MarginCode: 234 return types.MarginCode[self._Entity.MarginCode.ToString()]
Represents a Margin result.
237class AnalysisResult(ABC): 238 ''' 239 Contains result information for an analysis 240 ''' 241 def __init__(self, analysisResult: _api.AnalysisResult): 242 self._Entity = analysisResult 243 244 @property 245 def LimitUltimate(self) -> types.LimitUltimate: 246 ''' 247 Limit vs Ultimate loads. 248 ''' 249 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 250 251 @property 252 def LoadCaseId(self) -> int: 253 return self._Entity.LoadCaseId 254 255 @property 256 def Margin(self) -> Margin: 257 ''' 258 Represents a Margin result. 259 ''' 260 result = self._Entity.Margin 261 return Margin(result) if result is not None else None 262 263 @property 264 def AnalysisDefinition(self) -> AnalysisDefinition: 265 result = self._Entity.AnalysisDefinition 266 return AnalysisDefinition(result) if result is not None else None
Contains result information for an analysis
244 @property 245 def LimitUltimate(self) -> types.LimitUltimate: 246 ''' 247 Limit vs Ultimate loads. 248 ''' 249 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()]
Limit vs Ultimate loads.
269class JointAnalysisResult(AnalysisResult): 270 def __init__(self, jointAnalysisResult: _api.JointAnalysisResult): 271 self._Entity = jointAnalysisResult 272 273 @property 274 def ObjectId(self) -> types.JointObject: 275 ''' 276 Enum identifying the possible entities within a joint 277 ''' 278 return types.JointObject[self._Entity.ObjectId.ToString()]
Contains result information for an analysis
273 @property 274 def ObjectId(self) -> types.JointObject: 275 ''' 276 Enum identifying the possible entities within a joint 277 ''' 278 return types.JointObject[self._Entity.ObjectId.ToString()]
Enum identifying the possible entities within a joint
Inherited Members
281class ZoneAnalysisConceptResult(AnalysisResult): 282 def __init__(self, zoneAnalysisConceptResult: _api.ZoneAnalysisConceptResult): 283 self._Entity = zoneAnalysisConceptResult 284 285 @property 286 def ConceptId(self) -> types.FamilyConceptUID: 287 return types.FamilyConceptUID[self._Entity.ConceptId.ToString()]
Contains result information for an analysis
Inherited Members
290class ZoneAnalysisObjectResult(AnalysisResult): 291 def __init__(self, zoneAnalysisObjectResult: _api.ZoneAnalysisObjectResult): 292 self._Entity = zoneAnalysisObjectResult 293 294 @property 295 def ObjectId(self) -> types.FamilyObjectUID: 296 return types.FamilyObjectUID[self._Entity.ObjectId.ToString()]
Contains result information for an analysis
Inherited Members
299class AssignableProperty(IdNameEntity): 300 def __init__(self, assignableProperty: _api.AssignableProperty): 301 self._Entity = assignableProperty
Represents an entity with an ID and Name.
Inherited Members
304class AssignablePropertyWithFamilyCategory(AssignableProperty): 305 def __init__(self, assignablePropertyWithFamilyCategory: _api.AssignablePropertyWithFamilyCategory): 306 self._Entity = assignablePropertyWithFamilyCategory 307 308 @property 309 def FamilyCategory(self) -> types.FamilyCategory: 310 return types.FamilyCategory[self._Entity.FamilyCategory.ToString()]
Represents an entity with an ID and Name.
Inherited Members
313class FailureObjectGroup(IdNameEntity): 314 def __init__(self, failureObjectGroup: _api.FailureObjectGroup): 315 self._Entity = failureObjectGroup 316 317 @property 318 def ObjectGroup(self) -> types.ObjectGroup: 319 return types.ObjectGroup[self._Entity.ObjectGroup.ToString()] 320 321 @property 322 def IsEnabled(self) -> bool: 323 return self._Entity.IsEnabled 324 325 @property 326 def LimitUltimate(self) -> types.LimitUltimate: 327 ''' 328 Limit vs Ultimate loads. 329 ''' 330 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 331 332 @property 333 def RequiredMargin(self) -> float: 334 return self._Entity.RequiredMargin 335 336 @IsEnabled.setter 337 def IsEnabled(self, value: bool) -> None: 338 self._Entity.IsEnabled = value 339 340 @LimitUltimate.setter 341 def LimitUltimate(self, value: types.LimitUltimate) -> None: 342 self._Entity.LimitUltimate = _types.LimitUltimate(value.value) 343 344 @RequiredMargin.setter 345 def RequiredMargin(self, value: float) -> None: 346 self._Entity.RequiredMargin = value
Represents an entity with an ID and Name.
325 @property 326 def LimitUltimate(self) -> types.LimitUltimate: 327 ''' 328 Limit vs Ultimate loads. 329 ''' 330 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()]
Limit vs Ultimate loads.
Inherited Members
349class FailureSetting(IdNameEntity): 350 ''' 351 Setting for a Failure Mode or a Failure Criteria. 352 ''' 353 def __init__(self, failureSetting: _api.FailureSetting): 354 self._Entity = failureSetting 355 356 @property 357 def CategoryId(self) -> int: 358 return self._Entity.CategoryId 359 360 @property 361 def DataType(self) -> types.UserConstantDataType: 362 return types.UserConstantDataType[self._Entity.DataType.ToString()] 363 364 @property 365 def DefaultValue(self) -> str: 366 return self._Entity.DefaultValue 367 368 @property 369 def Description(self) -> str: 370 return self._Entity.Description 371 372 @property 373 def EnumValues(self) -> dict[int, str]: 374 enumValuesDict = {} 375 for kvp in self._Entity.EnumValues: 376 enumValuesDict[int(kvp.Key)] = str(kvp.Value) 377 378 return enumValuesDict 379 380 @property 381 def PackageId(self) -> int: 382 return self._Entity.PackageId 383 384 @property 385 def PackageSettingId(self) -> int: 386 return self._Entity.PackageSettingId 387 388 @property 389 def UID(self) -> Guid: 390 return self._Entity.UID 391 392 @property 393 def Value(self) -> str: 394 return self._Entity.Value 395 396 def SetStringValue(self, value: str) -> None: 397 return self._Entity.SetStringValue(value) 398 399 def SetIntValue(self, value: int) -> None: 400 return self._Entity.SetIntValue(value) 401 402 def SetFloatValue(self, value: float) -> None: 403 return self._Entity.SetFloatValue(value) 404 405 def SetBoolValue(self, value: bool) -> None: 406 return self._Entity.SetBoolValue(value) 407 408 def SetSelectionValue(self, index: int) -> None: 409 return self._Entity.SetSelectionValue(index)
Setting for a Failure Mode or a Failure Criteria.
Inherited Members
412class IdEntityCol(Generic[T], ABC): 413 def __init__(self, idEntityCol: _api.IdEntityCol): 414 self._Entity = idEntityCol 415 416 @property 417 def IdEntityColList(self) -> tuple[IdEntity]: 418 if self._Entity.Count() <= 0: 419 return () 420 thisClass = type(self._Entity._items[0]).__name__ 421 givenClass = IdEntity 422 for subclass in IdEntity.__subclasses__(): 423 if subclass.__name__ == thisClass: 424 givenClass = subclass 425 return tuple([givenClass(idEntityCol) for idEntityCol in self._Entity]) 426 427 @property 428 def Ids(self) -> tuple[int]: 429 return tuple([int(int32) for int32 in self._Entity.Ids]) 430 431 def Contains(self, id: int) -> bool: 432 return self._Entity.Contains(id) 433 434 def Count(self) -> int: 435 return self._Entity.Count() 436 437 def Get(self, id: int) -> T: 438 return self._Entity.Get(id) 439 440 def __getitem__(self, index: int): 441 return self.IdEntityColList[index] 442 443 def __iter__(self): 444 yield from self.IdEntityColList 445 446 def __len__(self): 447 return len(self.IdEntityColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
416 @property 417 def IdEntityColList(self) -> tuple[IdEntity]: 418 if self._Entity.Count() <= 0: 419 return () 420 thisClass = type(self._Entity._items[0]).__name__ 421 givenClass = IdEntity 422 for subclass in IdEntity.__subclasses__(): 423 if subclass.__name__ == thisClass: 424 givenClass = subclass 425 return tuple([givenClass(idEntityCol) for idEntityCol in self._Entity])
450class IdNameEntityCol(IdEntityCol, Generic[T]): 451 def __init__(self, idNameEntityCol: _api.IdNameEntityCol): 452 self._Entity = idNameEntityCol 453 self._CollectedClass = T 454 455 @property 456 def IdNameEntityColList(self) -> tuple[T]: 457 if self._Entity.Count() <= 0: 458 return () 459 thisClass = type(self._Entity._items[0]).__name__ 460 givenClass = T 461 for subclass in T.__subclasses__(): 462 if subclass.__name__ == thisClass: 463 givenClass = subclass 464 return tuple([givenClass(idNameEntityCol) for idNameEntityCol in self._Entity]) 465 466 @property 467 def Names(self) -> tuple[str]: 468 return tuple([str(string) for string in self._Entity.Names]) 469 470 @overload 471 def Get(self, name: str) -> T: ... 472 473 @overload 474 def Get(self, id: int) -> T: ... 475 476 def Get(self, item1 = None) -> T: 477 if isinstance(item1, str): 478 return self._Entity.Get(item1) 479 480 if isinstance(item1, int): 481 return super().Get(item1) 482 483 return self._Entity.Get(item1) 484 485 def __getitem__(self, index: int): 486 return self.IdNameEntityColList[index] 487 488 def __iter__(self): 489 yield from self.IdNameEntityColList 490 491 def __len__(self): 492 return len(self.IdNameEntityColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
455 @property 456 def IdNameEntityColList(self) -> tuple[T]: 457 if self._Entity.Count() <= 0: 458 return () 459 thisClass = type(self._Entity._items[0]).__name__ 460 givenClass = T 461 for subclass in T.__subclasses__(): 462 if subclass.__name__ == thisClass: 463 givenClass = subclass 464 return tuple([givenClass(idNameEntityCol) for idNameEntityCol in self._Entity])
Inherited Members
495class FailureObjectGroupCol(IdNameEntityCol[FailureObjectGroup]): 496 def __init__(self, failureObjectGroupCol: _api.FailureObjectGroupCol): 497 self._Entity = failureObjectGroupCol 498 self._CollectedClass = FailureObjectGroup 499 500 @property 501 def FailureObjectGroupColList(self) -> tuple[FailureObjectGroup]: 502 return tuple([FailureObjectGroup(failureObjectGroupCol) for failureObjectGroupCol in self._Entity]) 503 504 @overload 505 def Get(self, objectGroup: types.ObjectGroup) -> FailureObjectGroup: ... 506 507 @overload 508 def Get(self, name: str) -> FailureObjectGroup: ... 509 510 @overload 511 def Get(self, id: int) -> FailureObjectGroup: ... 512 513 def Get(self, item1 = None) -> FailureObjectGroup: 514 if isinstance(item1, types.ObjectGroup): 515 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value))) 516 517 if isinstance(item1, str): 518 return FailureObjectGroup(super().Get(item1)) 519 520 if isinstance(item1, int): 521 return FailureObjectGroup(super().Get(item1)) 522 523 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value))) 524 525 def __getitem__(self, index: int): 526 return self.FailureObjectGroupColList[index] 527 528 def __iter__(self): 529 yield from self.FailureObjectGroupColList 530 531 def __len__(self): 532 return len(self.FailureObjectGroupColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
513 def Get(self, item1 = None) -> FailureObjectGroup: 514 if isinstance(item1, types.ObjectGroup): 515 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value))) 516 517 if isinstance(item1, str): 518 return FailureObjectGroup(super().Get(item1)) 519 520 if isinstance(item1, int): 521 return FailureObjectGroup(super().Get(item1)) 522 523 return FailureObjectGroup(self._Entity.Get(_types.ObjectGroup(item1.value)))
Inherited Members
535class FailureSettingCol(IdNameEntityCol[FailureSetting]): 536 def __init__(self, failureSettingCol: _api.FailureSettingCol): 537 self._Entity = failureSettingCol 538 self._CollectedClass = FailureSetting 539 540 @property 541 def FailureSettingColList(self) -> tuple[FailureSetting]: 542 return tuple([FailureSetting(failureSettingCol) for failureSettingCol in self._Entity]) 543 544 @overload 545 def Get(self, name: str) -> FailureSetting: ... 546 547 @overload 548 def Get(self, id: int) -> FailureSetting: ... 549 550 def Get(self, item1 = None) -> FailureSetting: 551 if isinstance(item1, str): 552 return FailureSetting(super().Get(item1)) 553 554 if isinstance(item1, int): 555 return FailureSetting(super().Get(item1)) 556 557 result = self._Entity.Get(item1) 558 thisClass = type(result).__name__ 559 givenClass = FailureSetting 560 for subclass in FailureSetting.__subclasses__(): 561 if subclass.__name__ == thisClass: 562 givenClass = subclass 563 return givenClass(result) 564 565 def __getitem__(self, index: int): 566 return self.FailureSettingColList[index] 567 568 def __iter__(self): 569 yield from self.FailureSettingColList 570 571 def __len__(self): 572 return len(self.FailureSettingColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
550 def Get(self, item1 = None) -> FailureSetting: 551 if isinstance(item1, str): 552 return FailureSetting(super().Get(item1)) 553 554 if isinstance(item1, int): 555 return FailureSetting(super().Get(item1)) 556 557 result = self._Entity.Get(item1) 558 thisClass = type(result).__name__ 559 givenClass = FailureSetting 560 for subclass in FailureSetting.__subclasses__(): 561 if subclass.__name__ == thisClass: 562 givenClass = subclass 563 return givenClass(result)
Inherited Members
575class FailureCriterion(IdNameEntity): 576 def __init__(self, failureCriterion: _api.FailureCriterion): 577 self._Entity = failureCriterion 578 579 @property 580 def Description(self) -> str: 581 return self._Entity.Description 582 583 @property 584 def IsEnabled(self) -> bool: 585 return self._Entity.IsEnabled 586 587 @property 588 def LimitUltimate(self) -> types.LimitUltimate: 589 return types.LimitUltimate[self._Entity.LimitUltimate.ToString()] 590 591 @property 592 def ObjectGroups(self) -> FailureObjectGroupCol: 593 result = self._Entity.ObjectGroups 594 return FailureObjectGroupCol(result) if result is not None else None 595 596 @property 597 def RequiredMargin(self) -> float: 598 return self._Entity.RequiredMargin 599 600 @property 601 def Settings(self) -> FailureSettingCol: 602 result = self._Entity.Settings 603 return FailureSettingCol(result) if result is not None else None 604 605 @IsEnabled.setter 606 def IsEnabled(self, value: bool) -> None: 607 self._Entity.IsEnabled = value 608 609 @LimitUltimate.setter 610 def LimitUltimate(self, value: types.LimitUltimate) -> None: 611 self._Entity.LimitUltimate = _types.LimitUltimate(value.value) 612 613 @RequiredMargin.setter 614 def RequiredMargin(self, value: float) -> None: 615 self._Entity.RequiredMargin = value
Represents an entity with an ID and Name.
Inherited Members
618class IdNameEntityRenameable(IdNameEntity): 619 def __init__(self, idNameEntityRenameable: _api.IdNameEntityRenameable): 620 self._Entity = idNameEntityRenameable 621 622 def Rename(self, name: str) -> None: 623 return self._Entity.Rename(name)
Represents an entity with an ID and Name.
Inherited Members
626class FailureCriterionCol(IdNameEntityCol[FailureCriterion]): 627 def __init__(self, failureCriterionCol: _api.FailureCriterionCol): 628 self._Entity = failureCriterionCol 629 self._CollectedClass = FailureCriterion 630 631 @property 632 def FailureCriterionColList(self) -> tuple[FailureCriterion]: 633 return tuple([FailureCriterion(failureCriterionCol) for failureCriterionCol in self._Entity]) 634 635 @overload 636 def Get(self, name: str) -> FailureCriterion: ... 637 638 @overload 639 def Get(self, id: int) -> FailureCriterion: ... 640 641 def Get(self, item1 = None) -> FailureCriterion: 642 if isinstance(item1, str): 643 return FailureCriterion(super().Get(item1)) 644 645 if isinstance(item1, int): 646 return FailureCriterion(super().Get(item1)) 647 648 return FailureCriterion(self._Entity.Get(item1)) 649 650 def __getitem__(self, index: int): 651 return self.FailureCriterionColList[index] 652 653 def __iter__(self): 654 yield from self.FailureCriterionColList 655 656 def __len__(self): 657 return len(self.FailureCriterionColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
660class FailureMode(IdNameEntityRenameable): 661 def __init__(self, failureMode: _api.FailureMode): 662 self._Entity = failureMode 663 664 @property 665 def AnalysisCategoryId(self) -> int: 666 return self._Entity.AnalysisCategoryId 667 668 @property 669 def AnalysisCategoryName(self) -> str: 670 return self._Entity.AnalysisCategoryName 671 672 @property 673 def Criteria(self) -> FailureCriterionCol: 674 result = self._Entity.Criteria 675 return FailureCriterionCol(result) if result is not None else None 676 677 @property 678 def Settings(self) -> FailureSettingCol: 679 result = self._Entity.Settings 680 return FailureSettingCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
683class FailureModeCol(IdNameEntityCol[FailureMode]): 684 def __init__(self, failureModeCol: _api.FailureModeCol): 685 self._Entity = failureModeCol 686 self._CollectedClass = FailureMode 687 688 @property 689 def FailureModeColList(self) -> tuple[FailureMode]: 690 return tuple([FailureMode(failureModeCol) for failureModeCol in self._Entity]) 691 692 @overload 693 def CreateFailureMode(self, failureModeCategoryId: int, name: str = None) -> FailureMode: ... 694 695 @overload 696 def CreateFailureMode(self, failureModeCategory: str, name: str = None) -> FailureMode: ... 697 698 @overload 699 def Get(self, name: str) -> FailureMode: ... 700 701 @overload 702 def Get(self, id: int) -> FailureMode: ... 703 704 def CreateFailureMode(self, item1 = None, item2 = None) -> FailureMode: 705 if isinstance(item1, int) and isinstance(item2, str): 706 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 707 708 if isinstance(item1, str) and isinstance(item2, str): 709 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 710 711 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 712 713 def Get(self, item1 = None) -> FailureMode: 714 if isinstance(item1, str): 715 return FailureMode(super().Get(item1)) 716 717 if isinstance(item1, int): 718 return FailureMode(super().Get(item1)) 719 720 return FailureMode(self._Entity.Get(item1)) 721 722 def __getitem__(self, index: int): 723 return self.FailureModeColList[index] 724 725 def __iter__(self): 726 yield from self.FailureModeColList 727 728 def __len__(self): 729 return len(self.FailureModeColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
704 def CreateFailureMode(self, item1 = None, item2 = None) -> FailureMode: 705 if isinstance(item1, int) and isinstance(item2, str): 706 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 707 708 if isinstance(item1, str) and isinstance(item2, str): 709 return FailureMode(self._Entity.CreateFailureMode(item1, item2)) 710 711 return FailureMode(self._Entity.CreateFailureMode(item1, item2))
Inherited Members
732class AnalysisProperty(AssignablePropertyWithFamilyCategory): 733 def __init__(self, analysisProperty: _api.AnalysisProperty): 734 self._Entity = analysisProperty 735 736 @property 737 def FailureModes(self) -> FailureModeCol: 738 result = self._Entity.FailureModes 739 return FailureModeCol(result) if result is not None else None 740 741 @overload 742 def AddFailureMode(self, id: int) -> None: ... 743 744 @overload 745 def AddFailureMode(self, ids: tuple[int]) -> None: ... 746 747 @overload 748 def RemoveFailureMode(self, id: int) -> None: ... 749 750 @overload 751 def RemoveFailureMode(self, ids: tuple[int]) -> None: ... 752 753 def AddFailureMode(self, item1 = None) -> None: 754 if isinstance(item1, int): 755 return self._Entity.AddFailureMode(item1) 756 757 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 758 idsList = MakeCSharpIntList(item1) 759 idsEnumerable = IEnumerable(idsList) 760 return self._Entity.AddFailureMode(idsEnumerable) 761 762 return self._Entity.AddFailureMode(item1) 763 764 def RemoveFailureMode(self, item1 = None) -> None: 765 if isinstance(item1, int): 766 return self._Entity.RemoveFailureMode(item1) 767 768 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 769 idsList = MakeCSharpIntList(item1) 770 idsEnumerable = IEnumerable(idsList) 771 return self._Entity.RemoveFailureMode(idsEnumerable) 772 773 return self._Entity.RemoveFailureMode(item1)
Represents an entity with an ID and Name.
753 def AddFailureMode(self, item1 = None) -> None: 754 if isinstance(item1, int): 755 return self._Entity.AddFailureMode(item1) 756 757 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 758 idsList = MakeCSharpIntList(item1) 759 idsEnumerable = IEnumerable(idsList) 760 return self._Entity.AddFailureMode(idsEnumerable) 761 762 return self._Entity.AddFailureMode(item1)
764 def RemoveFailureMode(self, item1 = None) -> None: 765 if isinstance(item1, int): 766 return self._Entity.RemoveFailureMode(item1) 767 768 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 769 idsList = MakeCSharpIntList(item1) 770 idsEnumerable = IEnumerable(idsList) 771 return self._Entity.RemoveFailureMode(idsEnumerable) 772 773 return self._Entity.RemoveFailureMode(item1)
Inherited Members
776class DesignProperty(AssignablePropertyWithFamilyCategory): 777 def __init__(self, designProperty: _api.DesignProperty): 778 self._Entity = designProperty 779 780 def Copy(self, newName: str = None) -> DesignProperty: 781 result = self._Entity.Copy(newName) 782 thisClass = type(result).__name__ 783 givenClass = DesignProperty 784 for subclass in DesignProperty.__subclasses__(): 785 if subclass.__name__ == thisClass: 786 givenClass = subclass 787 return givenClass(result)
Represents an entity with an ID and Name.
780 def Copy(self, newName: str = None) -> DesignProperty: 781 result = self._Entity.Copy(newName) 782 thisClass = type(result).__name__ 783 givenClass = DesignProperty 784 for subclass in DesignProperty.__subclasses__(): 785 if subclass.__name__ == thisClass: 786 givenClass = subclass 787 return givenClass(result)
Inherited Members
790class LoadProperty(AssignableProperty): 791 def __init__(self, loadProperty: _api.LoadProperty): 792 self._Entity = loadProperty 793 794 @property 795 def Category(self) -> types.FamilyCategory: 796 return types.FamilyCategory[self._Entity.Category.ToString()] 797 798 @property 799 def Type(self) -> types.LoadPropertyType: 800 return types.LoadPropertyType[self._Entity.Type.ToString()] 801 802 @property 803 def IsZeroCurvature(self) -> bool: 804 return self._Entity.IsZeroCurvature 805 806 @property 807 def ModificationDate(self) -> DateTime: 808 return self._Entity.ModificationDate
Represents an entity with an ID and Name.
Inherited Members
811class DesignLoadSubcase(IdNameEntity): 812 def __init__(self, designLoadSubcase: _api.DesignLoadSubcase): 813 self._Entity = designLoadSubcase 814 815 @property 816 def RunDeckId(self) -> int: 817 return self._Entity.RunDeckId 818 819 @property 820 def IsThermal(self) -> bool: 821 return self._Entity.IsThermal 822 823 @property 824 def IsEditable(self) -> bool: 825 return self._Entity.IsEditable 826 827 @property 828 def Description(self) -> str: 829 return self._Entity.Description 830 831 @property 832 def ModificationDate(self) -> DateTime: 833 return self._Entity.ModificationDate 834 835 @property 836 def NastranSubcaseId(self) -> int: 837 return self._Entity.NastranSubcaseId 838 839 @property 840 def NastranLoadId(self) -> int: 841 return self._Entity.NastranLoadId 842 843 @property 844 def NastranSpcId(self) -> int: 845 return self._Entity.NastranSpcId 846 847 @property 848 def AbaqusStepName(self) -> str: 849 return self._Entity.AbaqusStepName 850 851 @property 852 def AbaqusLoadCaseName(self) -> str: 853 return self._Entity.AbaqusLoadCaseName 854 855 @property 856 def AbaqusStepTime(self) -> float: 857 return self._Entity.AbaqusStepTime 858 859 @property 860 def RunDeckOrder(self) -> int: 861 return self._Entity.RunDeckOrder 862 863 @property 864 def SolutionType(self) -> types.FeaSolutionType: 865 return types.FeaSolutionType[self._Entity.SolutionType.ToString()]
Represents an entity with an ID and Name.
Inherited Members
868class DesignLoadSubcaseMultiplier(IdNameEntity): 869 def __init__(self, designLoadSubcaseMultiplier: _api.DesignLoadSubcaseMultiplier): 870 self._Entity = designLoadSubcaseMultiplier 871 872 @property 873 def LimitFactor(self) -> float: 874 return self._Entity.LimitFactor 875 876 @property 877 def Subcase(self) -> DesignLoadSubcase: 878 result = self._Entity.Subcase 879 return DesignLoadSubcase(result) if result is not None else None 880 881 @property 882 def UltimateFactor(self) -> float: 883 return self._Entity.UltimateFactor 884 885 @property 886 def Value(self) -> float: 887 return self._Entity.Value
Represents an entity with an ID and Name.
Inherited Members
890class DesignLoadSubcaseTemperature(IdNameEntity): 891 def __init__(self, designLoadSubcaseTemperature: _api.DesignLoadSubcaseTemperature): 892 self._Entity = designLoadSubcaseTemperature 893 894 @property 895 def HasTemperatureSubcase(self) -> bool: 896 return self._Entity.HasTemperatureSubcase 897 898 @property 899 def Subcase(self) -> DesignLoadSubcase: 900 result = self._Entity.Subcase 901 return DesignLoadSubcase(result) if result is not None else None 902 903 @property 904 def TemperatureChoiceType(self) -> types.TemperatureChoiceType: 905 ''' 906 Load Case Setting selection for analysis and initial temperature. 907 ''' 908 return types.TemperatureChoiceType[self._Entity.TemperatureChoiceType.ToString()] 909 910 @property 911 def Value(self) -> float: 912 return self._Entity.Value
Represents an entity with an ID and Name.
903 @property 904 def TemperatureChoiceType(self) -> types.TemperatureChoiceType: 905 ''' 906 Load Case Setting selection for analysis and initial temperature. 907 ''' 908 return types.TemperatureChoiceType[self._Entity.TemperatureChoiceType.ToString()]
Load Case Setting selection for analysis and initial temperature.
Inherited Members
915class DesignLoadSubcaseMultiplierCol(IdNameEntityCol[DesignLoadSubcaseMultiplier]): 916 def __init__(self, designLoadSubcaseMultiplierCol: _api.DesignLoadSubcaseMultiplierCol): 917 self._Entity = designLoadSubcaseMultiplierCol 918 self._CollectedClass = DesignLoadSubcaseMultiplier 919 920 @property 921 def DesignLoadSubcaseMultiplierColList(self) -> tuple[DesignLoadSubcaseMultiplier]: 922 return tuple([DesignLoadSubcaseMultiplier(designLoadSubcaseMultiplierCol) for designLoadSubcaseMultiplierCol in self._Entity]) 923 924 @overload 925 def Get(self, name: str) -> DesignLoadSubcaseMultiplier: ... 926 927 @overload 928 def Get(self, id: int) -> DesignLoadSubcaseMultiplier: ... 929 930 def Get(self, item1 = None) -> DesignLoadSubcaseMultiplier: 931 if isinstance(item1, str): 932 return DesignLoadSubcaseMultiplier(super().Get(item1)) 933 934 if isinstance(item1, int): 935 return DesignLoadSubcaseMultiplier(super().Get(item1)) 936 937 return DesignLoadSubcaseMultiplier(self._Entity.Get(item1)) 938 939 def __getitem__(self, index: int): 940 return self.DesignLoadSubcaseMultiplierColList[index] 941 942 def __iter__(self): 943 yield from self.DesignLoadSubcaseMultiplierColList 944 945 def __len__(self): 946 return len(self.DesignLoadSubcaseMultiplierColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
930 def Get(self, item1 = None) -> DesignLoadSubcaseMultiplier: 931 if isinstance(item1, str): 932 return DesignLoadSubcaseMultiplier(super().Get(item1)) 933 934 if isinstance(item1, int): 935 return DesignLoadSubcaseMultiplier(super().Get(item1)) 936 937 return DesignLoadSubcaseMultiplier(self._Entity.Get(item1))
Inherited Members
949class DesignLoad(IdNameEntity): 950 def __init__(self, designLoad: _api.DesignLoad): 951 self._Entity = designLoad 952 953 @property 954 def AnalysisTemperature(self) -> DesignLoadSubcaseTemperature: 955 result = self._Entity.AnalysisTemperature 956 return DesignLoadSubcaseTemperature(result) if result is not None else None 957 958 @property 959 def InitialTemperature(self) -> DesignLoadSubcaseTemperature: 960 result = self._Entity.InitialTemperature 961 return DesignLoadSubcaseTemperature(result) if result is not None else None 962 963 @property 964 def Description(self) -> str: 965 return self._Entity.Description 966 967 @property 968 def IsActive(self) -> bool: 969 return self._Entity.IsActive 970 971 @property 972 def IsEditable(self) -> bool: 973 return self._Entity.IsEditable 974 975 @property 976 def IsVirtual(self) -> bool: 977 return self._Entity.IsVirtual 978 979 @property 980 def ModificationDate(self) -> DateTime: 981 return self._Entity.ModificationDate 982 983 @property 984 def SubcaseMultipliers(self) -> DesignLoadSubcaseMultiplierCol: 985 result = self._Entity.SubcaseMultipliers 986 return DesignLoadSubcaseMultiplierCol(result) if result is not None else None 987 988 @property 989 def Types(self) -> list[types.LoadCaseType]: 990 return [types.LoadCaseType[loadCaseType.ToString()] for loadCaseType in self._Entity.Types] 991 992 @property 993 def UID(self) -> Guid: 994 return self._Entity.UID
Represents an entity with an ID and Name.
Inherited Members
997class JointDesignResult(IdEntity): 998 def __init__(self, jointDesignResult: _api.JointDesignResult): 999 self._Entity = jointDesignResult
Represents an entity with an ID.
1002class ZoneDesignResult(IdEntity): 1003 def __init__(self, zoneDesignResult: _api.ZoneDesignResult): 1004 self._Entity = zoneDesignResult 1005 1006 @property 1007 def VariableParameter(self) -> types.VariableParameter: 1008 return types.VariableParameter[self._Entity.VariableParameter.ToString()] 1009 1010 @property 1011 def Value(self) -> float: 1012 return self._Entity.Value 1013 1014 @property 1015 def MaterialId(self) -> int: 1016 return self._Entity.MaterialId 1017 1018 @property 1019 def MaterialType(self) -> types.MaterialType: 1020 return types.MaterialType[self._Entity.MaterialType.ToString()]
Represents an entity with an ID.
1023class Vector3d: 1024 ''' 1025 Represents a readonly 3D vector. 1026 ''' 1027 def __init__(self, vector3d: _api.Vector3d): 1028 self._Entity = vector3d 1029 1030 def Create_Vector3d(x: float, y: float, z: float): 1031 return Vector3d(_api.Vector3d(x, y, z)) 1032 1033 @property 1034 def X(self) -> float: 1035 return self._Entity.X 1036 1037 @property 1038 def Y(self) -> float: 1039 return self._Entity.Y 1040 1041 @property 1042 def Z(self) -> float: 1043 return self._Entity.Z 1044 1045 @overload 1046 def Equals(self, other) -> bool: ... 1047 1048 @overload 1049 def Equals(self, obj) -> bool: ... 1050 1051 def GetHashCode(self) -> int: 1052 return self._Entity.GetHashCode() 1053 1054 def Equals(self, item1 = None) -> bool: 1055 if isinstance(item1, Vector3d): 1056 return self._Entity.Equals(item1._Entity) 1057 1058 return self._Entity.Equals(item1._Entity) 1059 1060 def __eq__(self, other): 1061 return self.Equals(other) 1062 1063 def __ne__(self, other): 1064 return not self.Equals(other)
Represents a readonly 3D vector.
1067class DiscreteField(IdNameEntityRenameable): 1068 ''' 1069 Represents a table of discrete field data. 1070 ''' 1071 def __init__(self, discreteField: _api.DiscreteField): 1072 self._Entity = discreteField 1073 1074 @property 1075 def Columns(self) -> dict[int, str]: 1076 columnsDict = {} 1077 for kvp in self._Entity.Columns: 1078 columnsDict[int(kvp.Key)] = str(kvp.Value) 1079 1080 return columnsDict 1081 1082 @property 1083 def ColumnCount(self) -> int: 1084 return self._Entity.ColumnCount 1085 1086 @property 1087 def DataType(self) -> types.DiscreteFieldDataType: 1088 ''' 1089 Defines the type of data stored in a Discrete Field. Such as Vector, Scalar, String. 1090 ''' 1091 return types.DiscreteFieldDataType[self._Entity.DataType.ToString()] 1092 1093 @property 1094 def PhysicalEntityType(self) -> types.DiscreteFieldPhysicalEntityType: 1095 ''' 1096 Defines the type of physical entity that a Discrete Field applies to, such as zone, element, joint, etc. 1097 ''' 1098 return types.DiscreteFieldPhysicalEntityType[self._Entity.PhysicalEntityType.ToString()] 1099 1100 @property 1101 def PointIds(self) -> list[Vector3d]: 1102 return [Vector3d(vector3d) for vector3d in self._Entity.PointIds] 1103 1104 @property 1105 def RowCount(self) -> int: 1106 return self._Entity.RowCount 1107 1108 @property 1109 def RowIds(self) -> list[int]: 1110 return [int32 for int32 in self._Entity.RowIds] 1111 1112 def AddColumn(self, name: str) -> int: 1113 return self._Entity.AddColumn(name) 1114 1115 def AddPointRow(self, pointId: Vector3d) -> None: 1116 return self._Entity.AddPointRow(pointId._Entity) 1117 1118 @overload 1119 def ReadNumericCell(self, entityId: int, columnId: int) -> float: ... 1120 1121 @overload 1122 def ReadNumericCell(self, pointId: Vector3d, columnId: int) -> float: ... 1123 1124 @overload 1125 def ReadStringCell(self, entityId: int, columnId: int) -> str: ... 1126 1127 @overload 1128 def ReadStringCell(self, pointId: Vector3d, columnId: int) -> str: ... 1129 1130 def SetColumnName(self, columnId: int, name: str) -> None: 1131 return self._Entity.SetColumnName(columnId, name) 1132 1133 @overload 1134 def SetNumericValue(self, entityId: int, columnId: int, value: float) -> None: ... 1135 1136 @overload 1137 def SetNumericValue(self, pointId: Vector3d, columnId: int, value: float) -> None: ... 1138 1139 @overload 1140 def SetStringValue(self, entityId: int, columnId: int, value: str) -> None: ... 1141 1142 @overload 1143 def SetStringValue(self, pointId: Vector3d, columnId: int, value: str) -> None: ... 1144 1145 def DeleteAllRows(self) -> None: 1146 ''' 1147 Delete all rows for this discrete field. 1148 ''' 1149 return self._Entity.DeleteAllRows() 1150 1151 def DeleteColumn(self, columnId: int) -> None: 1152 return self._Entity.DeleteColumn(columnId) 1153 1154 def DeletePointRow(self, pointId: Vector3d) -> None: 1155 return self._Entity.DeletePointRow(pointId._Entity) 1156 1157 def DeleteRow(self, entityId: int) -> None: 1158 return self._Entity.DeleteRow(entityId) 1159 1160 def DeleteRowsAndColumns(self) -> None: 1161 ''' 1162 Delete all rows and columns for this discrete field. 1163 ''' 1164 return self._Entity.DeleteRowsAndColumns() 1165 1166 def ReadNumericCell(self, item1 = None, item2 = None) -> float: 1167 if isinstance(item1, int) and isinstance(item2, int): 1168 return self._Entity.ReadNumericCell(item1, item2) 1169 1170 if isinstance(item1, Vector3d) and isinstance(item2, int): 1171 return self._Entity.ReadNumericCell(item1._Entity, item2) 1172 1173 return self._Entity.ReadNumericCell(item1, item2) 1174 1175 def ReadStringCell(self, item1 = None, item2 = None) -> str: 1176 if isinstance(item1, int) and isinstance(item2, int): 1177 return self._Entity.ReadStringCell(item1, item2) 1178 1179 if isinstance(item1, Vector3d) and isinstance(item2, int): 1180 return self._Entity.ReadStringCell(item1._Entity, item2) 1181 1182 return self._Entity.ReadStringCell(item1, item2) 1183 1184 def SetNumericValue(self, item1 = None, item2 = None, item3 = None) -> None: 1185 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, float): 1186 return self._Entity.SetNumericValue(item1, item2, item3) 1187 1188 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, float): 1189 return self._Entity.SetNumericValue(item1._Entity, item2, item3) 1190 1191 return self._Entity.SetNumericValue(item1, item2, item3) 1192 1193 def SetStringValue(self, item1 = None, item2 = None, item3 = None) -> None: 1194 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, str): 1195 return self._Entity.SetStringValue(item1, item2, item3) 1196 1197 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, str): 1198 return self._Entity.SetStringValue(item1._Entity, item2, item3) 1199 1200 return self._Entity.SetStringValue(item1, item2, item3)
Represents a table of discrete field data.
1086 @property 1087 def DataType(self) -> types.DiscreteFieldDataType: 1088 ''' 1089 Defines the type of data stored in a Discrete Field. Such as Vector, Scalar, String. 1090 ''' 1091 return types.DiscreteFieldDataType[self._Entity.DataType.ToString()]
Defines the type of data stored in a Discrete Field. Such as Vector, Scalar, String.
1093 @property 1094 def PhysicalEntityType(self) -> types.DiscreteFieldPhysicalEntityType: 1095 ''' 1096 Defines the type of physical entity that a Discrete Field applies to, such as zone, element, joint, etc. 1097 ''' 1098 return types.DiscreteFieldPhysicalEntityType[self._Entity.PhysicalEntityType.ToString()]
Defines the type of physical entity that a Discrete Field applies to, such as zone, element, joint, etc.
1166 def ReadNumericCell(self, item1 = None, item2 = None) -> float: 1167 if isinstance(item1, int) and isinstance(item2, int): 1168 return self._Entity.ReadNumericCell(item1, item2) 1169 1170 if isinstance(item1, Vector3d) and isinstance(item2, int): 1171 return self._Entity.ReadNumericCell(item1._Entity, item2) 1172 1173 return self._Entity.ReadNumericCell(item1, item2)
1175 def ReadStringCell(self, item1 = None, item2 = None) -> str: 1176 if isinstance(item1, int) and isinstance(item2, int): 1177 return self._Entity.ReadStringCell(item1, item2) 1178 1179 if isinstance(item1, Vector3d) and isinstance(item2, int): 1180 return self._Entity.ReadStringCell(item1._Entity, item2) 1181 1182 return self._Entity.ReadStringCell(item1, item2)
1184 def SetNumericValue(self, item1 = None, item2 = None, item3 = None) -> None: 1185 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, float): 1186 return self._Entity.SetNumericValue(item1, item2, item3) 1187 1188 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, float): 1189 return self._Entity.SetNumericValue(item1._Entity, item2, item3) 1190 1191 return self._Entity.SetNumericValue(item1, item2, item3)
1193 def SetStringValue(self, item1 = None, item2 = None, item3 = None) -> None: 1194 if isinstance(item1, int) and isinstance(item2, int) and isinstance(item3, str): 1195 return self._Entity.SetStringValue(item1, item2, item3) 1196 1197 if isinstance(item1, Vector3d) and isinstance(item2, int) and isinstance(item3, str): 1198 return self._Entity.SetStringValue(item1._Entity, item2, item3) 1199 1200 return self._Entity.SetStringValue(item1, item2, item3)
1145 def DeleteAllRows(self) -> None: 1146 ''' 1147 Delete all rows for this discrete field. 1148 ''' 1149 return self._Entity.DeleteAllRows()
Delete all rows for this discrete field.
1160 def DeleteRowsAndColumns(self) -> None: 1161 ''' 1162 Delete all rows and columns for this discrete field. 1163 ''' 1164 return self._Entity.DeleteRowsAndColumns()
Delete all rows and columns for this discrete field.
Inherited Members
1203class Node(IdEntity): 1204 def __init__(self, node: _api.Node): 1205 self._Entity = node 1206 1207 @property 1208 def X(self) -> float: 1209 return self._Entity.X 1210 1211 @property 1212 def Y(self) -> float: 1213 return self._Entity.Y 1214 1215 @property 1216 def Z(self) -> float: 1217 return self._Entity.Z
Represents an entity with an ID.
1220class Centroid: 1221 def __init__(self, centroid: _api.Centroid): 1222 self._Entity = centroid 1223 1224 @property 1225 def X(self) -> float: 1226 return self._Entity.X 1227 1228 @property 1229 def Y(self) -> float: 1230 return self._Entity.Y 1231 1232 @property 1233 def Z(self) -> float: 1234 return self._Entity.Z
1237class Element(IdEntity): 1238 def __init__(self, element: _api.Element): 1239 self._Entity = element 1240 1241 @property 1242 def MarginOfSafety(self) -> float: 1243 return self._Entity.MarginOfSafety 1244 1245 @property 1246 def Centroid(self) -> Centroid: 1247 result = self._Entity.Centroid 1248 return Centroid(result) if result is not None else None 1249 1250 @property 1251 def Nodes(self) -> list[Node]: 1252 return [Node(node) for node in self._Entity.Nodes]
Represents an entity with an ID.
1255class FailureModeCategory(IdNameEntity): 1256 def __init__(self, failureModeCategory: _api.FailureModeCategory): 1257 self._Entity = failureModeCategory 1258 1259 @property 1260 def PackageId(self) -> int: 1261 return self._Entity.PackageId
Represents an entity with an ID and Name.
Inherited Members
1264class EntityWithAssignableProperties(IdNameEntityRenameable): 1265 def __init__(self, entityWithAssignableProperties: _api.EntityWithAssignableProperties): 1266 self._Entity = entityWithAssignableProperties 1267 1268 @property 1269 def AssignedAnalysisProperty(self) -> AnalysisProperty: 1270 result = self._Entity.AssignedAnalysisProperty 1271 return AnalysisProperty(result) if result is not None else None 1272 1273 @property 1274 def AssignedDesignProperty(self) -> DesignProperty: 1275 thisClass = type(self._Entity.AssignedDesignProperty).__name__ 1276 givenClass = DesignProperty 1277 for subclass in DesignProperty.__subclasses__(): 1278 if subclass.__name__ == thisClass: 1279 givenClass = subclass 1280 result = self._Entity.AssignedDesignProperty 1281 return givenClass(result) if result is not None else None 1282 1283 @property 1284 def AssignedLoadProperty(self) -> LoadProperty: 1285 thisClass = type(self._Entity.AssignedLoadProperty).__name__ 1286 givenClass = LoadProperty 1287 for subclass in LoadProperty.__subclasses__(): 1288 if subclass.__name__ == thisClass: 1289 givenClass = subclass 1290 result = self._Entity.AssignedLoadProperty 1291 return givenClass(result) if result is not None else None 1292 1293 def AssignAnalysisProperty(self, id: int) -> PropertyAssignmentStatus: 1294 return PropertyAssignmentStatus[self._Entity.AssignAnalysisProperty(id).ToString()] 1295 1296 def AssignDesignProperty(self, id: int) -> PropertyAssignmentStatus: 1297 return PropertyAssignmentStatus[self._Entity.AssignDesignProperty(id).ToString()] 1298 1299 def AssignLoadProperty(self, id: int) -> PropertyAssignmentStatus: 1300 return PropertyAssignmentStatus[self._Entity.AssignLoadProperty(id).ToString()] 1301 1302 def AssignProperty(self, property: AssignableProperty) -> PropertyAssignmentStatus: 1303 return PropertyAssignmentStatus[self._Entity.AssignProperty(property._Entity).ToString()]
Represents an entity with an ID and Name.
1273 @property 1274 def AssignedDesignProperty(self) -> DesignProperty: 1275 thisClass = type(self._Entity.AssignedDesignProperty).__name__ 1276 givenClass = DesignProperty 1277 for subclass in DesignProperty.__subclasses__(): 1278 if subclass.__name__ == thisClass: 1279 givenClass = subclass 1280 result = self._Entity.AssignedDesignProperty 1281 return givenClass(result) if result is not None else None
1283 @property 1284 def AssignedLoadProperty(self) -> LoadProperty: 1285 thisClass = type(self._Entity.AssignedLoadProperty).__name__ 1286 givenClass = LoadProperty 1287 for subclass in LoadProperty.__subclasses__(): 1288 if subclass.__name__ == thisClass: 1289 givenClass = subclass 1290 result = self._Entity.AssignedLoadProperty 1291 return givenClass(result) if result is not None else None
Inherited Members
1306class AnalysisResultCol(Generic[T]): 1307 def __init__(self, analysisResultCol: _api.AnalysisResultCol): 1308 self._Entity = analysisResultCol 1309 1310 @property 1311 def AnalysisResultColList(self) -> tuple[AnalysisResult]: 1312 if self._Entity.Count() <= 0: 1313 return () 1314 thisClass = type(self._Entity._items[0]).__name__ 1315 givenClass = AnalysisResult 1316 for subclass in AnalysisResult.__subclasses__(): 1317 if subclass.__name__ == thisClass: 1318 givenClass = subclass 1319 return tuple([givenClass(analysisResultCol) for analysisResultCol in self._Entity]) 1320 1321 def Count(self) -> int: 1322 return self._Entity.Count() 1323 1324 def __getitem__(self, index: int): 1325 return self.AnalysisResultColList[index] 1326 1327 def __iter__(self): 1328 yield from self.AnalysisResultColList 1329 1330 def __len__(self): 1331 return len(self.AnalysisResultColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1310 @property 1311 def AnalysisResultColList(self) -> tuple[AnalysisResult]: 1312 if self._Entity.Count() <= 0: 1313 return () 1314 thisClass = type(self._Entity._items[0]).__name__ 1315 givenClass = AnalysisResult 1316 for subclass in AnalysisResult.__subclasses__(): 1317 if subclass.__name__ == thisClass: 1318 givenClass = subclass 1319 return tuple([givenClass(analysisResultCol) for analysisResultCol in self._Entity])
1334class ZoneJointEntity(EntityWithAssignableProperties): 1335 ''' 1336 Abstract base for a Zone or Joint. 1337 ''' 1338 def __init__(self, zoneJointEntity: _api.ZoneJointEntity): 1339 self._Entity = zoneJointEntity 1340 1341 @abstractmethod 1342 def GetMinimumMargin(self) -> Margin: 1343 return Margin(self._Entity.GetMinimumMargin()) 1344 1345 @abstractmethod 1346 def GetControllingResult(self) -> AnalysisResult: 1347 result = self._Entity.GetControllingResult() 1348 thisClass = type(result).__name__ 1349 givenClass = AnalysisResult 1350 for subclass in AnalysisResult.__subclasses__(): 1351 if subclass.__name__ == thisClass: 1352 givenClass = subclass 1353 return givenClass(result) 1354 1355 @abstractmethod 1356 def GetAllResults(self) -> AnalysisResultCol: 1357 return AnalysisResultCol(self._Entity.GetAllResults())
Abstract base for a Zone or Joint.
1345 @abstractmethod 1346 def GetControllingResult(self) -> AnalysisResult: 1347 result = self._Entity.GetControllingResult() 1348 thisClass = type(result).__name__ 1349 givenClass = AnalysisResult 1350 for subclass in AnalysisResult.__subclasses__(): 1351 if subclass.__name__ == thisClass: 1352 givenClass = subclass 1353 return givenClass(result)
1360class JointDesignResultCol(IdEntityCol[JointDesignResult]): 1361 def __init__(self, jointDesignResultCol: _api.JointDesignResultCol): 1362 self._Entity = jointDesignResultCol 1363 self._CollectedClass = JointDesignResult 1364 1365 @property 1366 def JointDesignResultColList(self) -> tuple[JointDesignResult]: 1367 return tuple([JointDesignResult(jointDesignResultCol) for jointDesignResultCol in self._Entity]) 1368 1369 @overload 1370 def Get(self, jointSelectionId: types.JointSelectionId) -> JointDesignResult: ... 1371 1372 @overload 1373 def Get(self, jointRangeId: types.JointRangeId) -> JointDesignResult: ... 1374 1375 @overload 1376 def Get(self, id: int) -> JointDesignResult: ... 1377 1378 def Get(self, item1 = None) -> JointDesignResult: 1379 if isinstance(item1, types.JointSelectionId): 1380 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1381 thisClass = type(result).__name__ 1382 givenClass = JointDesignResult 1383 for subclass in JointDesignResult.__subclasses__(): 1384 if subclass.__name__ == thisClass: 1385 givenClass = subclass 1386 return givenClass(result) 1387 1388 if isinstance(item1, types.JointRangeId): 1389 result = self._Entity.Get(_types.JointRangeId(item1.value)) 1390 thisClass = type(result).__name__ 1391 givenClass = JointDesignResult 1392 for subclass in JointDesignResult.__subclasses__(): 1393 if subclass.__name__ == thisClass: 1394 givenClass = subclass 1395 return givenClass(result) 1396 1397 if isinstance(item1, int): 1398 return JointDesignResult(super().Get(item1)) 1399 1400 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1401 thisClass = type(result).__name__ 1402 givenClass = JointDesignResult 1403 for subclass in JointDesignResult.__subclasses__(): 1404 if subclass.__name__ == thisClass: 1405 givenClass = subclass 1406 return givenClass(result) 1407 1408 def __getitem__(self, index: int): 1409 return self.JointDesignResultColList[index] 1410 1411 def __iter__(self): 1412 yield from self.JointDesignResultColList 1413 1414 def __len__(self): 1415 return len(self.JointDesignResultColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1378 def Get(self, item1 = None) -> JointDesignResult: 1379 if isinstance(item1, types.JointSelectionId): 1380 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1381 thisClass = type(result).__name__ 1382 givenClass = JointDesignResult 1383 for subclass in JointDesignResult.__subclasses__(): 1384 if subclass.__name__ == thisClass: 1385 givenClass = subclass 1386 return givenClass(result) 1387 1388 if isinstance(item1, types.JointRangeId): 1389 result = self._Entity.Get(_types.JointRangeId(item1.value)) 1390 thisClass = type(result).__name__ 1391 givenClass = JointDesignResult 1392 for subclass in JointDesignResult.__subclasses__(): 1393 if subclass.__name__ == thisClass: 1394 givenClass = subclass 1395 return givenClass(result) 1396 1397 if isinstance(item1, int): 1398 return JointDesignResult(super().Get(item1)) 1399 1400 result = self._Entity.Get(_types.JointSelectionId(item1.value)) 1401 thisClass = type(result).__name__ 1402 givenClass = JointDesignResult 1403 for subclass in JointDesignResult.__subclasses__(): 1404 if subclass.__name__ == thisClass: 1405 givenClass = subclass 1406 return givenClass(result)
Inherited Members
1418class Joint(ZoneJointEntity): 1419 def __init__(self, joint: _api.Joint): 1420 self._Entity = joint 1421 1422 @property 1423 def JointRangeSizingResults(self) -> JointDesignResultCol: 1424 result = self._Entity.JointRangeSizingResults 1425 return JointDesignResultCol(result) if result is not None else None 1426 1427 @property 1428 def JointSelectionSizingResults(self) -> JointDesignResultCol: 1429 result = self._Entity.JointSelectionSizingResults 1430 return JointDesignResultCol(result) if result is not None else None 1431 1432 def GetAllResults(self) -> AnalysisResultCol: 1433 return AnalysisResultCol(self._Entity.GetAllResults()) 1434 1435 def GetControllingResult(self) -> AnalysisResult: 1436 result = self._Entity.GetControllingResult() 1437 thisClass = type(result).__name__ 1438 givenClass = AnalysisResult 1439 for subclass in AnalysisResult.__subclasses__(): 1440 if subclass.__name__ == thisClass: 1441 givenClass = subclass 1442 return givenClass(result) 1443 1444 def GetMinimumMargin(self) -> Margin: 1445 return Margin(self._Entity.GetMinimumMargin())
Abstract base for a Zone or Joint.
1435 def GetControllingResult(self) -> AnalysisResult: 1436 result = self._Entity.GetControllingResult() 1437 thisClass = type(result).__name__ 1438 givenClass = AnalysisResult 1439 for subclass in AnalysisResult.__subclasses__(): 1440 if subclass.__name__ == thisClass: 1441 givenClass = subclass 1442 return givenClass(result)
1448class ZoneDesignResultCol(IdEntityCol[ZoneDesignResult]): 1449 def __init__(self, zoneDesignResultCol: _api.ZoneDesignResultCol): 1450 self._Entity = zoneDesignResultCol 1451 self._CollectedClass = ZoneDesignResult 1452 1453 @property 1454 def ZoneDesignResultColList(self) -> tuple[ZoneDesignResult]: 1455 return tuple([ZoneDesignResult(zoneDesignResultCol) for zoneDesignResultCol in self._Entity]) 1456 1457 @overload 1458 def Get(self, parameterId: types.VariableParameter) -> ZoneDesignResult: ... 1459 1460 @overload 1461 def Get(self, id: int) -> ZoneDesignResult: ... 1462 1463 def Get(self, item1 = None) -> ZoneDesignResult: 1464 if isinstance(item1, types.VariableParameter): 1465 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value))) 1466 1467 if isinstance(item1, int): 1468 return ZoneDesignResult(super().Get(item1)) 1469 1470 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value))) 1471 1472 def __getitem__(self, index: int): 1473 return self.ZoneDesignResultColList[index] 1474 1475 def __iter__(self): 1476 yield from self.ZoneDesignResultColList 1477 1478 def __len__(self): 1479 return len(self.ZoneDesignResultColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1463 def Get(self, item1 = None) -> ZoneDesignResult: 1464 if isinstance(item1, types.VariableParameter): 1465 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value))) 1466 1467 if isinstance(item1, int): 1468 return ZoneDesignResult(super().Get(item1)) 1469 1470 return ZoneDesignResult(self._Entity.Get(_types.VariableParameter(item1.value)))
Inherited Members
1482class ZoneBase(ZoneJointEntity): 1483 ''' 1484 Abstract for regular Zones and Panel Segments. 1485 ''' 1486 def __init__(self, zoneBase: _api.ZoneBase): 1487 self._Entity = zoneBase 1488 1489 @property 1490 def Centroid(self) -> Centroid: 1491 result = self._Entity.Centroid 1492 return Centroid(result) if result is not None else None 1493 1494 @property 1495 def Id(self) -> int: 1496 return self._Entity.Id 1497 1498 @property 1499 def Weight(self) -> float: 1500 return self._Entity.Weight 1501 1502 @property 1503 def NonOptimumFactor(self) -> float: 1504 return self._Entity.NonOptimumFactor 1505 1506 @property 1507 def AddedWeight(self) -> float: 1508 return self._Entity.AddedWeight 1509 1510 @property 1511 def SuperimposePanel(self) -> bool: 1512 return self._Entity.SuperimposePanel 1513 1514 @property 1515 def BucklingImperfection(self) -> float: 1516 return self._Entity.BucklingImperfection 1517 1518 @property 1519 def IsBeamColumn(self) -> bool: 1520 return self._Entity.IsBeamColumn 1521 1522 @property 1523 def SuperimposeBoundaryCondition(self) -> int: 1524 return self._Entity.SuperimposeBoundaryCondition 1525 1526 @property 1527 def IsZeroOutFeaMoments(self) -> bool: 1528 return self._Entity.IsZeroOutFeaMoments 1529 1530 @property 1531 def IsZeroOutFeaTransverseShears(self) -> bool: 1532 return self._Entity.IsZeroOutFeaTransverseShears 1533 1534 @property 1535 def MechanicalLimit(self) -> float: 1536 return self._Entity.MechanicalLimit 1537 1538 @property 1539 def MechanicalUltimate(self) -> float: 1540 return self._Entity.MechanicalUltimate 1541 1542 @property 1543 def ThermalHelp(self) -> float: 1544 return self._Entity.ThermalHelp 1545 1546 @property 1547 def ThermalHurt(self) -> float: 1548 return self._Entity.ThermalHurt 1549 1550 @property 1551 def FatigueKTSkin(self) -> float: 1552 return self._Entity.FatigueKTSkin 1553 1554 @property 1555 def FatigueKTStiff(self) -> float: 1556 return self._Entity.FatigueKTStiff 1557 1558 @property 1559 def XSpan(self) -> float: 1560 return self._Entity.XSpan 1561 1562 @property 1563 def EARequired(self) -> float: 1564 return self._Entity.EARequired 1565 1566 @property 1567 def EI1Required(self) -> float: 1568 return self._Entity.EI1Required 1569 1570 @property 1571 def EI2Required(self) -> float: 1572 return self._Entity.EI2Required 1573 1574 @property 1575 def GJRequired(self) -> float: 1576 return self._Entity.GJRequired 1577 1578 @property 1579 def EAAuto(self) -> float: 1580 return self._Entity.EAAuto 1581 1582 @property 1583 def EI1Auto(self) -> float: 1584 return self._Entity.EI1Auto 1585 1586 @property 1587 def EI2Auto(self) -> float: 1588 return self._Entity.EI2Auto 1589 1590 @property 1591 def GJAuto(self) -> float: 1592 return self._Entity.GJAuto 1593 1594 @property 1595 def Ex(self) -> float: 1596 return self._Entity.Ex 1597 1598 @property 1599 def Dmid(self) -> float: 1600 return self._Entity.Dmid 1601 1602 @NonOptimumFactor.setter 1603 def NonOptimumFactor(self, value: float) -> None: 1604 self._Entity.NonOptimumFactor = value 1605 1606 @AddedWeight.setter 1607 def AddedWeight(self, value: float) -> None: 1608 self._Entity.AddedWeight = value 1609 1610 @SuperimposePanel.setter 1611 def SuperimposePanel(self, value: bool) -> None: 1612 self._Entity.SuperimposePanel = value 1613 1614 @BucklingImperfection.setter 1615 def BucklingImperfection(self, value: float) -> None: 1616 self._Entity.BucklingImperfection = value 1617 1618 @IsBeamColumn.setter 1619 def IsBeamColumn(self, value: bool) -> None: 1620 self._Entity.IsBeamColumn = value 1621 1622 @SuperimposeBoundaryCondition.setter 1623 def SuperimposeBoundaryCondition(self, value: int) -> None: 1624 self._Entity.SuperimposeBoundaryCondition = value 1625 1626 @IsZeroOutFeaMoments.setter 1627 def IsZeroOutFeaMoments(self, value: bool) -> None: 1628 self._Entity.IsZeroOutFeaMoments = value 1629 1630 @IsZeroOutFeaTransverseShears.setter 1631 def IsZeroOutFeaTransverseShears(self, value: bool) -> None: 1632 self._Entity.IsZeroOutFeaTransverseShears = value 1633 1634 @MechanicalLimit.setter 1635 def MechanicalLimit(self, value: float) -> None: 1636 self._Entity.MechanicalLimit = value 1637 1638 @MechanicalUltimate.setter 1639 def MechanicalUltimate(self, value: float) -> None: 1640 self._Entity.MechanicalUltimate = value 1641 1642 @ThermalHelp.setter 1643 def ThermalHelp(self, value: float) -> None: 1644 self._Entity.ThermalHelp = value 1645 1646 @ThermalHurt.setter 1647 def ThermalHurt(self, value: float) -> None: 1648 self._Entity.ThermalHurt = value 1649 1650 @FatigueKTSkin.setter 1651 def FatigueKTSkin(self, value: float) -> None: 1652 self._Entity.FatigueKTSkin = value 1653 1654 @FatigueKTStiff.setter 1655 def FatigueKTStiff(self, value: float) -> None: 1656 self._Entity.FatigueKTStiff = value 1657 1658 @XSpan.setter 1659 def XSpan(self, value: float) -> None: 1660 self._Entity.XSpan = value 1661 1662 @EARequired.setter 1663 def EARequired(self, value: float) -> None: 1664 self._Entity.EARequired = value 1665 1666 @EI1Required.setter 1667 def EI1Required(self, value: float) -> None: 1668 self._Entity.EI1Required = value 1669 1670 @EI2Required.setter 1671 def EI2Required(self, value: float) -> None: 1672 self._Entity.EI2Required = value 1673 1674 @GJRequired.setter 1675 def GJRequired(self, value: float) -> None: 1676 self._Entity.GJRequired = value 1677 1678 @Ex.setter 1679 def Ex(self, value: float) -> None: 1680 self._Entity.Ex = value 1681 1682 @Dmid.setter 1683 def Dmid(self, value: float) -> None: 1684 self._Entity.Dmid = value 1685 1686 def GetObjectName(self, objectId: types.FamilyObjectUID) -> str: 1687 return self._Entity.GetObjectName(_types.FamilyObjectUID(objectId.value)) 1688 1689 def GetConceptName(self) -> str: 1690 return self._Entity.GetConceptName() 1691 1692 def GetZoneDesignResults(self, solutionId: int = 1) -> ZoneDesignResultCol: 1693 return ZoneDesignResultCol(self._Entity.GetZoneDesignResults(solutionId)) 1694 1695 def RenumberZone(self, newId: int) -> ZoneIdUpdateStatus: 1696 return ZoneIdUpdateStatus[self._Entity.RenumberZone(newId).ToString()] 1697 1698 def GetAllResults(self) -> AnalysisResultCol: 1699 return AnalysisResultCol(self._Entity.GetAllResults()) 1700 1701 def GetControllingResult(self) -> AnalysisResult: 1702 result = self._Entity.GetControllingResult() 1703 thisClass = type(result).__name__ 1704 givenClass = AnalysisResult 1705 for subclass in AnalysisResult.__subclasses__(): 1706 if subclass.__name__ == thisClass: 1707 givenClass = subclass 1708 return givenClass(result) 1709 1710 def GetMinimumMargin(self) -> Margin: 1711 return Margin(self._Entity.GetMinimumMargin())
Abstract for regular Zones and Panel Segments.
1701 def GetControllingResult(self) -> AnalysisResult: 1702 result = self._Entity.GetControllingResult() 1703 thisClass = type(result).__name__ 1704 givenClass = AnalysisResult 1705 for subclass in AnalysisResult.__subclasses__(): 1706 if subclass.__name__ == thisClass: 1707 givenClass = subclass 1708 return givenClass(result)
1714class ElementCol(IdEntityCol[Element]): 1715 def __init__(self, elementCol: _api.ElementCol): 1716 self._Entity = elementCol 1717 self._CollectedClass = Element 1718 1719 @property 1720 def ElementColList(self) -> tuple[Element]: 1721 return tuple([Element(elementCol) for elementCol in self._Entity]) 1722 1723 def __getitem__(self, index: int): 1724 return self.ElementColList[index] 1725 1726 def __iter__(self): 1727 yield from self.ElementColList 1728 1729 def __len__(self): 1730 return len(self.ElementColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
1733class PanelSegment(ZoneBase): 1734 def __init__(self, panelSegment: _api.PanelSegment): 1735 self._Entity = panelSegment 1736 1737 @property 1738 def ElementsByObjectOrSkin(self) -> dict[types.DiscreteDefinitionType, ElementCol]: 1739 elementsByObjectOrSkinDict = {} 1740 for kvp in self._Entity.ElementsByObjectOrSkin: 1741 elementsByObjectOrSkinDict[types.DiscreteDefinitionType[kvp.Key.ToString()]] = ElementCol(kvp.Value) 1742 1743 return elementsByObjectOrSkinDict 1744 1745 @property 1746 def Skins(self) -> tuple[types.DiscreteDefinitionType]: 1747 return tuple([types.DiscreteDefinitionType(discreteDefinitionType) for discreteDefinitionType in self._Entity.Skins]) 1748 1749 @property 1750 def Objects(self) -> tuple[types.DiscreteDefinitionType]: 1751 return tuple([types.DiscreteDefinitionType(discreteDefinitionType) for discreteDefinitionType in self._Entity.Objects]) 1752 1753 @property 1754 def DiscreteTechnique(self) -> types.DiscreteTechnique: 1755 return types.DiscreteTechnique[self._Entity.DiscreteTechnique.ToString()] 1756 1757 @property 1758 def LeftSkinZoneId(self) -> int: 1759 return self._Entity.LeftSkinZoneId 1760 1761 @property 1762 def RightSkinZoneId(self) -> int: 1763 return self._Entity.RightSkinZoneId 1764 1765 def GetElements(self, discreteDefinitionType: types.DiscreteDefinitionType) -> ElementCol: 1766 return ElementCol(self._Entity.GetElements(_types.DiscreteDefinitionType(discreteDefinitionType.value))) 1767 1768 def SetObjectElements(self, discreteDefinitionType: types.DiscreteDefinitionType, elementIds: tuple[int]) -> None: 1769 elementIdsList = MakeCSharpIntList(elementIds) 1770 elementIdsEnumerable = IEnumerable(elementIdsList) 1771 return self._Entity.SetObjectElements(_types.DiscreteDefinitionType(discreteDefinitionType.value), elementIdsEnumerable)
Abstract for regular Zones and Panel Segments.
1737 @property 1738 def ElementsByObjectOrSkin(self) -> dict[types.DiscreteDefinitionType, ElementCol]: 1739 elementsByObjectOrSkinDict = {} 1740 for kvp in self._Entity.ElementsByObjectOrSkin: 1741 elementsByObjectOrSkinDict[types.DiscreteDefinitionType[kvp.Key.ToString()]] = ElementCol(kvp.Value) 1742 1743 return elementsByObjectOrSkinDict
1768 def SetObjectElements(self, discreteDefinitionType: types.DiscreteDefinitionType, elementIds: tuple[int]) -> None: 1769 elementIdsList = MakeCSharpIntList(elementIds) 1770 elementIdsEnumerable = IEnumerable(elementIdsList) 1771 return self._Entity.SetObjectElements(_types.DiscreteDefinitionType(discreteDefinitionType.value), elementIdsEnumerable)
Inherited Members
- ZoneBase
- Centroid
- Id
- Weight
- NonOptimumFactor
- AddedWeight
- SuperimposePanel
- BucklingImperfection
- IsBeamColumn
- SuperimposeBoundaryCondition
- IsZeroOutFeaMoments
- IsZeroOutFeaTransverseShears
- MechanicalLimit
- MechanicalUltimate
- ThermalHelp
- ThermalHurt
- FatigueKTSkin
- FatigueKTStiff
- XSpan
- EARequired
- EI1Required
- EI2Required
- GJRequired
- EAAuto
- EI1Auto
- EI2Auto
- GJAuto
- Ex
- Dmid
- GetObjectName
- GetConceptName
- GetZoneDesignResults
- RenumberZone
- GetAllResults
- GetControllingResult
- GetMinimumMargin
1774class Zone(ZoneBase): 1775 ''' 1776 Abstract for regular Zones (not Panel Segments). 1777 ''' 1778 def __init__(self, zone: _api.Zone): 1779 self._Entity = zone 1780 1781 @property 1782 def Elements(self) -> ElementCol: 1783 result = self._Entity.Elements 1784 return ElementCol(result) if result is not None else None 1785 1786 def AddElements(self, elementIds: tuple[int]) -> None: 1787 elementIdsList = MakeCSharpIntList(elementIds) 1788 elementIdsEnumerable = IEnumerable(elementIdsList) 1789 return self._Entity.AddElements(elementIdsEnumerable)
Abstract for regular Zones (not Panel Segments).
Inherited Members
- ZoneBase
- Centroid
- Id
- Weight
- NonOptimumFactor
- AddedWeight
- SuperimposePanel
- BucklingImperfection
- IsBeamColumn
- SuperimposeBoundaryCondition
- IsZeroOutFeaMoments
- IsZeroOutFeaTransverseShears
- MechanicalLimit
- MechanicalUltimate
- ThermalHelp
- ThermalHurt
- FatigueKTSkin
- FatigueKTStiff
- XSpan
- EARequired
- EI1Required
- EI2Required
- GJRequired
- EAAuto
- EI1Auto
- EI2Auto
- GJAuto
- Ex
- Dmid
- GetObjectName
- GetConceptName
- GetZoneDesignResults
- RenumberZone
- GetAllResults
- GetControllingResult
- GetMinimumMargin
1792class EntityWithAssignablePropertiesCol(IdNameEntityCol, Generic[T]): 1793 def __init__(self, entityWithAssignablePropertiesCol: _api.EntityWithAssignablePropertiesCol): 1794 self._Entity = entityWithAssignablePropertiesCol 1795 self._CollectedClass = T 1796 1797 @property 1798 def EntityWithAssignablePropertiesColList(self) -> tuple[T]: 1799 if self._Entity.Count() <= 0: 1800 return () 1801 thisClass = type(self._Entity._items[0]).__name__ 1802 givenClass = T 1803 for subclass in T.__subclasses__(): 1804 if subclass.__name__ == thisClass: 1805 givenClass = subclass 1806 return tuple([givenClass(entityWithAssignablePropertiesCol) for entityWithAssignablePropertiesCol in self._Entity]) 1807 1808 def AssignPropertyToAll(self, property: AssignableProperty) -> PropertyAssignmentStatus: 1809 return PropertyAssignmentStatus[self._Entity.AssignPropertyToAll(property._Entity).ToString()] 1810 1811 @overload 1812 def Get(self, name: str) -> T: ... 1813 1814 @overload 1815 def Get(self, id: int) -> T: ... 1816 1817 def Get(self, item1 = None) -> T: 1818 if isinstance(item1, str): 1819 return super().Get(item1) 1820 1821 if isinstance(item1, int): 1822 return super().Get(item1) 1823 1824 return self._Entity.Get(item1) 1825 1826 def __getitem__(self, index: int): 1827 return self.EntityWithAssignablePropertiesColList[index] 1828 1829 def __iter__(self): 1830 yield from self.EntityWithAssignablePropertiesColList 1831 1832 def __len__(self): 1833 return len(self.EntityWithAssignablePropertiesColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1797 @property 1798 def EntityWithAssignablePropertiesColList(self) -> tuple[T]: 1799 if self._Entity.Count() <= 0: 1800 return () 1801 thisClass = type(self._Entity._items[0]).__name__ 1802 givenClass = T 1803 for subclass in T.__subclasses__(): 1804 if subclass.__name__ == thisClass: 1805 givenClass = subclass 1806 return tuple([givenClass(entityWithAssignablePropertiesCol) for entityWithAssignablePropertiesCol in self._Entity])
Inherited Members
1836class JointCol(EntityWithAssignablePropertiesCol[Joint]): 1837 def __init__(self, jointCol: _api.JointCol): 1838 self._Entity = jointCol 1839 self._CollectedClass = Joint 1840 1841 @property 1842 def JointColList(self) -> tuple[Joint]: 1843 return tuple([Joint(jointCol) for jointCol in self._Entity]) 1844 1845 @overload 1846 def Get(self, name: str) -> Joint: ... 1847 1848 @overload 1849 def Get(self, id: int) -> Joint: ... 1850 1851 def Get(self, item1 = None) -> Joint: 1852 if isinstance(item1, str): 1853 return Joint(super().Get(item1)) 1854 1855 if isinstance(item1, int): 1856 return Joint(super().Get(item1)) 1857 1858 return Joint(self._Entity.Get(item1)) 1859 1860 def __getitem__(self, index: int): 1861 return self.JointColList[index] 1862 1863 def __iter__(self): 1864 yield from self.JointColList 1865 1866 def __len__(self): 1867 return len(self.JointColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1870class PanelSegmentCol(EntityWithAssignablePropertiesCol[PanelSegment]): 1871 def __init__(self, panelSegmentCol: _api.PanelSegmentCol): 1872 self._Entity = panelSegmentCol 1873 self._CollectedClass = PanelSegment 1874 1875 @property 1876 def PanelSegmentColList(self) -> tuple[PanelSegment]: 1877 return tuple([PanelSegment(panelSegmentCol) for panelSegmentCol in self._Entity]) 1878 1879 @overload 1880 def Get(self, name: str) -> PanelSegment: ... 1881 1882 @overload 1883 def Get(self, id: int) -> PanelSegment: ... 1884 1885 def Get(self, item1 = None) -> PanelSegment: 1886 if isinstance(item1, str): 1887 return PanelSegment(super().Get(item1)) 1888 1889 if isinstance(item1, int): 1890 return PanelSegment(super().Get(item1)) 1891 1892 return PanelSegment(self._Entity.Get(item1)) 1893 1894 def __getitem__(self, index: int): 1895 return self.PanelSegmentColList[index] 1896 1897 def __iter__(self): 1898 yield from self.PanelSegmentColList 1899 1900 def __len__(self): 1901 return len(self.PanelSegmentColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1904class ZoneCol(EntityWithAssignablePropertiesCol[Zone]): 1905 def __init__(self, zoneCol: _api.ZoneCol): 1906 self._Entity = zoneCol 1907 self._CollectedClass = Zone 1908 1909 @property 1910 def ZoneColList(self) -> tuple[Zone]: 1911 return tuple([Zone(zoneCol) for zoneCol in self._Entity]) 1912 1913 @overload 1914 def Get(self, name: str) -> Zone: ... 1915 1916 @overload 1917 def Get(self, id: int) -> Zone: ... 1918 1919 def Get(self, item1 = None) -> Zone: 1920 if isinstance(item1, str): 1921 return Zone(super().Get(item1)) 1922 1923 if isinstance(item1, int): 1924 return Zone(super().Get(item1)) 1925 1926 result = self._Entity.Get(item1) 1927 thisClass = type(result).__name__ 1928 givenClass = Zone 1929 for subclass in Zone.__subclasses__(): 1930 if subclass.__name__ == thisClass: 1931 givenClass = subclass 1932 return givenClass(result) 1933 1934 def __getitem__(self, index: int): 1935 return self.ZoneColList[index] 1936 1937 def __iter__(self): 1938 yield from self.ZoneColList 1939 1940 def __len__(self): 1941 return len(self.ZoneColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
1919 def Get(self, item1 = None) -> Zone: 1920 if isinstance(item1, str): 1921 return Zone(super().Get(item1)) 1922 1923 if isinstance(item1, int): 1924 return Zone(super().Get(item1)) 1925 1926 result = self._Entity.Get(item1) 1927 thisClass = type(result).__name__ 1928 givenClass = Zone 1929 for subclass in Zone.__subclasses__(): 1930 if subclass.__name__ == thisClass: 1931 givenClass = subclass 1932 return givenClass(result)
1944class ZoneJointContainer(IdNameEntityRenameable): 1945 ''' 1946 Represents an entity that contains a collection of Zones and Joints. 1947 ''' 1948 def __init__(self, zoneJointContainer: _api.ZoneJointContainer): 1949 self._Entity = zoneJointContainer 1950 1951 @property 1952 def Centroid(self) -> Centroid: 1953 result = self._Entity.Centroid 1954 return Centroid(result) if result is not None else None 1955 1956 @property 1957 def Joints(self) -> JointCol: 1958 result = self._Entity.Joints 1959 return JointCol(result) if result is not None else None 1960 1961 @property 1962 def PanelSegments(self) -> PanelSegmentCol: 1963 result = self._Entity.PanelSegments 1964 return PanelSegmentCol(result) if result is not None else None 1965 1966 @property 1967 def TotalBeamLength(self) -> float: 1968 return self._Entity.TotalBeamLength 1969 1970 @property 1971 def TotalPanelArea(self) -> float: 1972 return self._Entity.TotalPanelArea 1973 1974 @property 1975 def TotalZoneWeight(self) -> float: 1976 return self._Entity.TotalZoneWeight 1977 1978 @property 1979 def Zones(self) -> ZoneCol: 1980 result = self._Entity.Zones 1981 return ZoneCol(result) if result is not None else None 1982 1983 @overload 1984 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 1985 1986 @overload 1987 @abstractmethod 1988 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 1989 1990 @overload 1991 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 1992 1993 @overload 1994 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 1995 1996 @overload 1997 @abstractmethod 1998 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 1999 2000 @overload 2001 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 2002 2003 @overload 2004 def AddZone(self, id: int) -> CollectionModificationStatus: ... 2005 2006 @overload 2007 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 2008 2009 @overload 2010 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 2011 2012 @overload 2013 @abstractmethod 2014 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 2015 2016 @overload 2017 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 2018 2019 @overload 2020 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 2021 2022 @overload 2023 @abstractmethod 2024 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 2025 2026 @overload 2027 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 2028 2029 @overload 2030 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 2031 2032 @overload 2033 @abstractmethod 2034 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 2035 2036 @overload 2037 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 2038 2039 @overload 2040 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 2041 2042 @overload 2043 @abstractmethod 2044 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 2045 2046 @overload 2047 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 2048 2049 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 2050 if isinstance(item1, int): 2051 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()] 2052 2053 if isinstance(item1, Joint): 2054 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 2055 2056 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()] 2057 2058 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 2059 if isinstance(item1, int): 2060 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 2061 2062 if isinstance(item1, Joint): 2063 return CollectionModificationStatus[self._Entity.RemoveJoint(item1._Entity).ToString()] 2064 2065 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 2066 2067 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 2068 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2069 jointIdsList = MakeCSharpIntList(item1) 2070 jointIdsEnumerable = IEnumerable(jointIdsList) 2071 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 2072 2073 if isinstance(item1, JointCol): 2074 return CollectionModificationStatus[self._Entity.RemoveJoints(item1._Entity).ToString()] 2075 2076 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()] 2077 2078 def AddZone(self, item1 = None) -> CollectionModificationStatus: 2079 if isinstance(item1, int): 2080 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 2081 2082 if isinstance(item1, Zone): 2083 return CollectionModificationStatus[self._Entity.AddZone(item1._Entity).ToString()] 2084 2085 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 2086 2087 def AddZones(self, item1 = None) -> CollectionModificationStatus: 2088 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2089 idsList = MakeCSharpIntList(item1) 2090 idsEnumerable = IEnumerable(idsList) 2091 return CollectionModificationStatus[self._Entity.AddZones(idsEnumerable).ToString()] 2092 2093 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 2094 zonesList = List[_api.Zone]() 2095 if item1 is not None: 2096 for thing in item1: 2097 if thing is not None: 2098 zonesList.Add(thing._Entity) 2099 zonesEnumerable = IEnumerable(zonesList) 2100 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 2101 2102 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()] 2103 2104 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 2105 if isinstance(item1, int): 2106 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 2107 2108 if isinstance(item1, Zone): 2109 return CollectionModificationStatus[self._Entity.RemoveZone(item1._Entity).ToString()] 2110 2111 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 2112 2113 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 2114 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2115 zoneIdsList = MakeCSharpIntList(item1) 2116 zoneIdsEnumerable = IEnumerable(zoneIdsList) 2117 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 2118 2119 if isinstance(item1, ZoneCol): 2120 return CollectionModificationStatus[self._Entity.RemoveZones(item1._Entity).ToString()] 2121 2122 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()] 2123 2124 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 2125 if isinstance(item1, int): 2126 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()] 2127 2128 if isinstance(item1, PanelSegment): 2129 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 2130 2131 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()] 2132 2133 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 2134 if isinstance(item1, int): 2135 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 2136 2137 if isinstance(item1, PanelSegment): 2138 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1._Entity).ToString()] 2139 2140 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 2141 2142 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 2143 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2144 segmentIdsList = MakeCSharpIntList(item1) 2145 segmentIdsEnumerable = IEnumerable(segmentIdsList) 2146 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 2147 2148 if isinstance(item1, PanelSegmentCol): 2149 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1._Entity).ToString()] 2150 2151 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()]
Represents an entity that contains a collection of Zones and Joints.
2049 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 2050 if isinstance(item1, int): 2051 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()] 2052 2053 if isinstance(item1, Joint): 2054 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 2055 2056 return CollectionModificationStatus[self._Entity.AddJoint(item1).ToString()]
2058 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 2059 if isinstance(item1, int): 2060 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 2061 2062 if isinstance(item1, Joint): 2063 return CollectionModificationStatus[self._Entity.RemoveJoint(item1._Entity).ToString()] 2064 2065 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()]
2067 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 2068 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2069 jointIdsList = MakeCSharpIntList(item1) 2070 jointIdsEnumerable = IEnumerable(jointIdsList) 2071 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 2072 2073 if isinstance(item1, JointCol): 2074 return CollectionModificationStatus[self._Entity.RemoveJoints(item1._Entity).ToString()] 2075 2076 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()]
2078 def AddZone(self, item1 = None) -> CollectionModificationStatus: 2079 if isinstance(item1, int): 2080 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 2081 2082 if isinstance(item1, Zone): 2083 return CollectionModificationStatus[self._Entity.AddZone(item1._Entity).ToString()] 2084 2085 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()]
2087 def AddZones(self, item1 = None) -> CollectionModificationStatus: 2088 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2089 idsList = MakeCSharpIntList(item1) 2090 idsEnumerable = IEnumerable(idsList) 2091 return CollectionModificationStatus[self._Entity.AddZones(idsEnumerable).ToString()] 2092 2093 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 2094 zonesList = List[_api.Zone]() 2095 if item1 is not None: 2096 for thing in item1: 2097 if thing is not None: 2098 zonesList.Add(thing._Entity) 2099 zonesEnumerable = IEnumerable(zonesList) 2100 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 2101 2102 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()]
2104 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 2105 if isinstance(item1, int): 2106 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 2107 2108 if isinstance(item1, Zone): 2109 return CollectionModificationStatus[self._Entity.RemoveZone(item1._Entity).ToString()] 2110 2111 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()]
2113 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 2114 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2115 zoneIdsList = MakeCSharpIntList(item1) 2116 zoneIdsEnumerable = IEnumerable(zoneIdsList) 2117 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 2118 2119 if isinstance(item1, ZoneCol): 2120 return CollectionModificationStatus[self._Entity.RemoveZones(item1._Entity).ToString()] 2121 2122 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()]
2124 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 2125 if isinstance(item1, int): 2126 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()] 2127 2128 if isinstance(item1, PanelSegment): 2129 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 2130 2131 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1).ToString()]
2133 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 2134 if isinstance(item1, int): 2135 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()] 2136 2137 if isinstance(item1, PanelSegment): 2138 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1._Entity).ToString()] 2139 2140 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()]
2142 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 2143 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 2144 segmentIdsList = MakeCSharpIntList(item1) 2145 segmentIdsEnumerable = IEnumerable(segmentIdsList) 2146 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 2147 2148 if isinstance(item1, PanelSegmentCol): 2149 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1._Entity).ToString()] 2150 2151 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()]
Inherited Members
2154class AutomatedConstraint(IdNameEntityRenameable): 2155 def __init__(self, automatedConstraint: _api.AutomatedConstraint): 2156 self._Entity = automatedConstraint 2157 2158 @property 2159 def ConstraintType(self) -> types.StiffnessCriteriaType: 2160 return types.StiffnessCriteriaType[self._Entity.ConstraintType.ToString()] 2161 2162 @property 2163 def Set(self) -> str: 2164 return self._Entity.Set 2165 2166 @property 2167 def DesignLoadCases(self) -> list[str]: 2168 return [string for string in self._Entity.DesignLoadCases] 2169 2170 @Set.setter 2171 def Set(self, value: str) -> None: 2172 self._Entity.Set = value 2173 2174 def AddDesignLoadCases(self, designLoadCases: list[str]) -> None: 2175 designLoadCasesList = List[str]() 2176 if designLoadCases is not None: 2177 for thing in designLoadCases: 2178 if thing is not None: 2179 designLoadCasesList.Add(thing) 2180 return self._Entity.AddDesignLoadCases(designLoadCasesList) 2181 2182 def RemoveDesignLoadCases(self, designLoadCases: list[str]) -> None: 2183 designLoadCasesList = List[str]() 2184 if designLoadCases is not None: 2185 for thing in designLoadCases: 2186 if thing is not None: 2187 designLoadCasesList.Add(thing) 2188 return self._Entity.RemoveDesignLoadCases(designLoadCasesList)
Represents an entity with an ID and Name.
2174 def AddDesignLoadCases(self, designLoadCases: list[str]) -> None: 2175 designLoadCasesList = List[str]() 2176 if designLoadCases is not None: 2177 for thing in designLoadCases: 2178 if thing is not None: 2179 designLoadCasesList.Add(thing) 2180 return self._Entity.AddDesignLoadCases(designLoadCasesList)
2182 def RemoveDesignLoadCases(self, designLoadCases: list[str]) -> None: 2183 designLoadCasesList = List[str]() 2184 if designLoadCases is not None: 2185 for thing in designLoadCases: 2186 if thing is not None: 2187 designLoadCasesList.Add(thing) 2188 return self._Entity.RemoveDesignLoadCases(designLoadCasesList)
Inherited Members
2191class ModalAutomatedConstraint(AutomatedConstraint): 2192 def __init__(self, modalAutomatedConstraint: _api.ModalAutomatedConstraint): 2193 self._Entity = modalAutomatedConstraint 2194 2195 @property 2196 def Eigenvalue(self) -> float: 2197 return self._Entity.Eigenvalue 2198 2199 @Eigenvalue.setter 2200 def Eigenvalue(self, value: float) -> None: 2201 self._Entity.Eigenvalue = value
Represents an entity with an ID and Name.
2204class BucklingAutomatedConstraint(ModalAutomatedConstraint): 2205 def __init__(self, bucklingAutomatedConstraint: _api.BucklingAutomatedConstraint): 2206 self._Entity = bucklingAutomatedConstraint
Represents an entity with an ID and Name.
2209class StaticAutomatedConstraint(AutomatedConstraint): 2210 def __init__(self, staticAutomatedConstraint: _api.StaticAutomatedConstraint): 2211 self._Entity = staticAutomatedConstraint 2212 2213 @property 2214 def VirtualDesignLoad(self) -> str: 2215 return self._Entity.VirtualDesignLoad 2216 2217 @property 2218 def GridId(self) -> int: 2219 return self._Entity.GridId 2220 2221 @property 2222 def Orientation(self) -> types.DisplacementShapeType: 2223 return types.DisplacementShapeType[self._Entity.Orientation.ToString()] 2224 2225 @property 2226 def HasVector(self) -> bool: 2227 return self._Entity.HasVector 2228 2229 @property 2230 def X(self) -> float: 2231 return self._Entity.X 2232 2233 @property 2234 def Y(self) -> float: 2235 return self._Entity.Y 2236 2237 @property 2238 def Z(self) -> float: 2239 return self._Entity.Z 2240 2241 @VirtualDesignLoad.setter 2242 def VirtualDesignLoad(self, value: str) -> None: 2243 self._Entity.VirtualDesignLoad = value 2244 2245 @GridId.setter 2246 def GridId(self, value: int) -> None: 2247 self._Entity.GridId = value 2248 2249 @Orientation.setter 2250 def Orientation(self, value: types.DisplacementShapeType) -> None: 2251 self._Entity.Orientation = _types.DisplacementShapeType(value.value) 2252 2253 @X.setter 2254 def X(self, value: float) -> None: 2255 self._Entity.X = value 2256 2257 @Y.setter 2258 def Y(self, value: float) -> None: 2259 self._Entity.Y = value 2260 2261 @Z.setter 2262 def Z(self, value: float) -> None: 2263 self._Entity.Z = value
Represents an entity with an ID and Name.
2266class DisplacementAutomatedConstraint(StaticAutomatedConstraint): 2267 def __init__(self, displacementAutomatedConstraint: _api.DisplacementAutomatedConstraint): 2268 self._Entity = displacementAutomatedConstraint 2269 2270 @property 2271 def Limit(self) -> float: 2272 return self._Entity.Limit 2273 2274 @Limit.setter 2275 def Limit(self, value: float) -> None: 2276 self._Entity.Limit = value
Represents an entity with an ID and Name.
2279class FrequencyAutomatedConstraint(ModalAutomatedConstraint): 2280 def __init__(self, frequencyAutomatedConstraint: _api.FrequencyAutomatedConstraint): 2281 self._Entity = frequencyAutomatedConstraint
Represents an entity with an ID and Name.
2284class RotationAutomatedConstraint(StaticAutomatedConstraint): 2285 def __init__(self, rotationAutomatedConstraint: _api.RotationAutomatedConstraint): 2286 self._Entity = rotationAutomatedConstraint 2287 2288 @property 2289 def Limit(self) -> float: 2290 return self._Entity.Limit 2291 2292 @Limit.setter 2293 def Limit(self, value: float) -> None: 2294 self._Entity.Limit = value
Represents an entity with an ID and Name.
2297class ManualConstraint(IdNameEntityRenameable): 2298 def __init__(self, manualConstraint: _api.ManualConstraint): 2299 self._Entity = manualConstraint 2300 2301 @property 2302 def ConstraintType(self) -> types.ConstraintType: 2303 return types.ConstraintType[self._Entity.ConstraintType.ToString()] 2304 2305 @property 2306 def Set(self) -> str: 2307 return self._Entity.Set 2308 2309 @property 2310 def Limit(self) -> float: 2311 return self._Entity.Limit 2312 2313 @property 2314 def A11(self) -> bool: 2315 return self._Entity.A11 2316 2317 @property 2318 def A22(self) -> bool: 2319 return self._Entity.A22 2320 2321 @property 2322 def A33(self) -> bool: 2323 return self._Entity.A33 2324 2325 @property 2326 def D11(self) -> bool: 2327 return self._Entity.D11 2328 2329 @property 2330 def D22(self) -> bool: 2331 return self._Entity.D22 2332 2333 @property 2334 def D33(self) -> bool: 2335 return self._Entity.D33 2336 2337 @property 2338 def EA(self) -> bool: 2339 return self._Entity.EA 2340 2341 @property 2342 def EI1(self) -> bool: 2343 return self._Entity.EI1 2344 2345 @property 2346 def EI2(self) -> bool: 2347 return self._Entity.EI2 2348 2349 @property 2350 def GJ(self) -> bool: 2351 return self._Entity.GJ 2352 2353 @property 2354 def IsActive(self) -> bool: 2355 return self._Entity.IsActive 2356 2357 @Set.setter 2358 def Set(self, value: str) -> None: 2359 self._Entity.Set = value 2360 2361 @Limit.setter 2362 def Limit(self, value: float) -> None: 2363 self._Entity.Limit = value 2364 2365 @A11.setter 2366 def A11(self, value: bool) -> None: 2367 self._Entity.A11 = value 2368 2369 @A22.setter 2370 def A22(self, value: bool) -> None: 2371 self._Entity.A22 = value 2372 2373 @A33.setter 2374 def A33(self, value: bool) -> None: 2375 self._Entity.A33 = value 2376 2377 @D11.setter 2378 def D11(self, value: bool) -> None: 2379 self._Entity.D11 = value 2380 2381 @D22.setter 2382 def D22(self, value: bool) -> None: 2383 self._Entity.D22 = value 2384 2385 @D33.setter 2386 def D33(self, value: bool) -> None: 2387 self._Entity.D33 = value 2388 2389 @EA.setter 2390 def EA(self, value: bool) -> None: 2391 self._Entity.EA = value 2392 2393 @EI1.setter 2394 def EI1(self, value: bool) -> None: 2395 self._Entity.EI1 = value 2396 2397 @EI2.setter 2398 def EI2(self, value: bool) -> None: 2399 self._Entity.EI2 = value 2400 2401 @GJ.setter 2402 def GJ(self, value: bool) -> None: 2403 self._Entity.GJ = value 2404 2405 @IsActive.setter 2406 def IsActive(self, value: bool) -> None: 2407 self._Entity.IsActive = value
Represents an entity with an ID and Name.
Inherited Members
2410class ManualConstraintWithDesignLoad(ManualConstraint): 2411 def __init__(self, manualConstraintWithDesignLoad: _api.ManualConstraintWithDesignLoad): 2412 self._Entity = manualConstraintWithDesignLoad 2413 2414 @property 2415 def UseAllDesignLoads(self) -> bool: 2416 return self._Entity.UseAllDesignLoads 2417 2418 @property 2419 def DesignLoadCase(self) -> str: 2420 return self._Entity.DesignLoadCase 2421 2422 @UseAllDesignLoads.setter 2423 def UseAllDesignLoads(self, value: bool) -> None: 2424 self._Entity.UseAllDesignLoads = value 2425 2426 @DesignLoadCase.setter 2427 def DesignLoadCase(self, value: str) -> None: 2428 self._Entity.DesignLoadCase = value
Represents an entity with an ID and Name.
2431class BucklingManualConstraint(ManualConstraintWithDesignLoad): 2432 def __init__(self, bucklingManualConstraint: _api.BucklingManualConstraint): 2433 self._Entity = bucklingManualConstraint
Represents an entity with an ID and Name.
2436class DisplacementManualConstraint(ManualConstraintWithDesignLoad): 2437 def __init__(self, displacementManualConstraint: _api.DisplacementManualConstraint): 2438 self._Entity = displacementManualConstraint 2439 2440 @property 2441 def DOF(self) -> types.DegreeOfFreedom: 2442 return types.DegreeOfFreedom[self._Entity.DOF.ToString()] 2443 2444 @property 2445 def Nodes(self) -> list[int]: 2446 return [int32 for int32 in self._Entity.Nodes] 2447 2448 @property 2449 def RefNodes(self) -> list[int]: 2450 return [int32 for int32 in self._Entity.RefNodes] 2451 2452 @DOF.setter 2453 def DOF(self, value: types.DegreeOfFreedom) -> None: 2454 self._Entity.DOF = _types.DegreeOfFreedom(value.value) 2455 2456 def AddNodes(self, ids: list[int]) -> None: 2457 idsList = MakeCSharpIntList(ids) 2458 return self._Entity.AddNodes(idsList) 2459 2460 def RemoveNodes(self, ids: list[int]) -> None: 2461 idsList = MakeCSharpIntList(ids) 2462 return self._Entity.RemoveNodes(idsList) 2463 2464 def AddRefNodes(self, ids: list[int]) -> None: 2465 idsList = MakeCSharpIntList(ids) 2466 return self._Entity.AddRefNodes(idsList) 2467 2468 def RemoveRefNodes(self, ids: list[int]) -> None: 2469 idsList = MakeCSharpIntList(ids) 2470 return self._Entity.RemoveRefNodes(idsList)
Represents an entity with an ID and Name.
2473class FrequencyManualConstraint(ManualConstraintWithDesignLoad): 2474 def __init__(self, frequencyManualConstraint: _api.FrequencyManualConstraint): 2475 self._Entity = frequencyManualConstraint
Represents an entity with an ID and Name.
2478class StaticMomentManualConstraint(ManualConstraint): 2479 def __init__(self, staticMomentManualConstraint: _api.StaticMomentManualConstraint): 2480 self._Entity = staticMomentManualConstraint
Represents an entity with an ID and Name.
2483class AutomatedConstraintCol(IdNameEntityCol[AutomatedConstraint]): 2484 def __init__(self, automatedConstraintCol: _api.AutomatedConstraintCol): 2485 self._Entity = automatedConstraintCol 2486 self._CollectedClass = AutomatedConstraint 2487 2488 @property 2489 def AutomatedConstraintColList(self) -> tuple[AutomatedConstraint]: 2490 return tuple([AutomatedConstraint(automatedConstraintCol) for automatedConstraintCol in self._Entity]) 2491 2492 def AddBucklingConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> BucklingAutomatedConstraint: 2493 designLoadsList = List[str]() 2494 if designLoads is not None: 2495 for thing in designLoads: 2496 if thing is not None: 2497 designLoadsList.Add(thing) 2498 return BucklingAutomatedConstraint(self._Entity.AddBucklingConstraint(designLoadsList, eigenvalue, name)) 2499 2500 def AddFrequencyConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> FrequencyAutomatedConstraint: 2501 designLoadsList = List[str]() 2502 if designLoads is not None: 2503 for thing in designLoads: 2504 if thing is not None: 2505 designLoadsList.Add(thing) 2506 return FrequencyAutomatedConstraint(self._Entity.AddFrequencyConstraint(designLoadsList, eigenvalue, name)) 2507 2508 def AddDisplacementConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> DisplacementAutomatedConstraint: 2509 designLoadsList = List[str]() 2510 if designLoads is not None: 2511 for thing in designLoads: 2512 if thing is not None: 2513 designLoadsList.Add(thing) 2514 return DisplacementAutomatedConstraint(self._Entity.AddDisplacementConstraint(designLoadsList, gridId, limit, name)) 2515 2516 def AddRotationConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> RotationAutomatedConstraint: 2517 designLoadsList = List[str]() 2518 if designLoads is not None: 2519 for thing in designLoads: 2520 if thing is not None: 2521 designLoadsList.Add(thing) 2522 return RotationAutomatedConstraint(self._Entity.AddRotationConstraint(designLoadsList, gridId, limit, name)) 2523 2524 @overload 2525 def Delete(self, id: int) -> bool: ... 2526 2527 @overload 2528 def Delete(self, name: str) -> bool: ... 2529 2530 @overload 2531 def GetBuckling(self, id: int) -> BucklingAutomatedConstraint: ... 2532 2533 @overload 2534 def GetBuckling(self, name: str) -> BucklingAutomatedConstraint: ... 2535 2536 @overload 2537 def GetFrequency(self, id: int) -> FrequencyAutomatedConstraint: ... 2538 2539 @overload 2540 def GetFrequency(self, name: str) -> FrequencyAutomatedConstraint: ... 2541 2542 @overload 2543 def GetRotation(self, id: int) -> RotationAutomatedConstraint: ... 2544 2545 @overload 2546 def GetRotation(self, name: str) -> RotationAutomatedConstraint: ... 2547 2548 @overload 2549 def GetDisplacement(self, id: int) -> DisplacementAutomatedConstraint: ... 2550 2551 @overload 2552 def GetDisplacement(self, name: str) -> DisplacementAutomatedConstraint: ... 2553 2554 @overload 2555 def Get(self, name: str) -> AutomatedConstraint: ... 2556 2557 @overload 2558 def Get(self, id: int) -> AutomatedConstraint: ... 2559 2560 def Delete(self, item1 = None) -> bool: 2561 if isinstance(item1, int): 2562 return self._Entity.Delete(item1) 2563 2564 if isinstance(item1, str): 2565 return self._Entity.Delete(item1) 2566 2567 return self._Entity.Delete(item1) 2568 2569 def GetBuckling(self, item1 = None) -> BucklingAutomatedConstraint: 2570 if isinstance(item1, int): 2571 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2572 2573 if isinstance(item1, str): 2574 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2575 2576 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2577 2578 def GetFrequency(self, item1 = None) -> FrequencyAutomatedConstraint: 2579 if isinstance(item1, int): 2580 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2581 2582 if isinstance(item1, str): 2583 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2584 2585 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2586 2587 def GetRotation(self, item1 = None) -> RotationAutomatedConstraint: 2588 if isinstance(item1, int): 2589 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2590 2591 if isinstance(item1, str): 2592 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2593 2594 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2595 2596 def GetDisplacement(self, item1 = None) -> DisplacementAutomatedConstraint: 2597 if isinstance(item1, int): 2598 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2599 2600 if isinstance(item1, str): 2601 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2602 2603 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2604 2605 def Get(self, item1 = None) -> AutomatedConstraint: 2606 if isinstance(item1, str): 2607 return AutomatedConstraint(super().Get(item1)) 2608 2609 if isinstance(item1, int): 2610 return AutomatedConstraint(super().Get(item1)) 2611 2612 result = self._Entity.Get(item1) 2613 thisClass = type(result).__name__ 2614 givenClass = AutomatedConstraint 2615 for subclass in AutomatedConstraint.__subclasses__(): 2616 if subclass.__name__ == thisClass: 2617 givenClass = subclass 2618 return givenClass(result) 2619 2620 def __getitem__(self, index: int): 2621 return self.AutomatedConstraintColList[index] 2622 2623 def __iter__(self): 2624 yield from self.AutomatedConstraintColList 2625 2626 def __len__(self): 2627 return len(self.AutomatedConstraintColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
2492 def AddBucklingConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> BucklingAutomatedConstraint: 2493 designLoadsList = List[str]() 2494 if designLoads is not None: 2495 for thing in designLoads: 2496 if thing is not None: 2497 designLoadsList.Add(thing) 2498 return BucklingAutomatedConstraint(self._Entity.AddBucklingConstraint(designLoadsList, eigenvalue, name))
2500 def AddFrequencyConstraint(self, designLoads: list[str], eigenvalue: float, name: str = None) -> FrequencyAutomatedConstraint: 2501 designLoadsList = List[str]() 2502 if designLoads is not None: 2503 for thing in designLoads: 2504 if thing is not None: 2505 designLoadsList.Add(thing) 2506 return FrequencyAutomatedConstraint(self._Entity.AddFrequencyConstraint(designLoadsList, eigenvalue, name))
2508 def AddDisplacementConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> DisplacementAutomatedConstraint: 2509 designLoadsList = List[str]() 2510 if designLoads is not None: 2511 for thing in designLoads: 2512 if thing is not None: 2513 designLoadsList.Add(thing) 2514 return DisplacementAutomatedConstraint(self._Entity.AddDisplacementConstraint(designLoadsList, gridId, limit, name))
2516 def AddRotationConstraint(self, designLoads: list[str], gridId: int, limit: float, name: str = None) -> RotationAutomatedConstraint: 2517 designLoadsList = List[str]() 2518 if designLoads is not None: 2519 for thing in designLoads: 2520 if thing is not None: 2521 designLoadsList.Add(thing) 2522 return RotationAutomatedConstraint(self._Entity.AddRotationConstraint(designLoadsList, gridId, limit, name))
2569 def GetBuckling(self, item1 = None) -> BucklingAutomatedConstraint: 2570 if isinstance(item1, int): 2571 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2572 2573 if isinstance(item1, str): 2574 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1)) 2575 2576 return BucklingAutomatedConstraint(self._Entity.GetBuckling(item1))
2578 def GetFrequency(self, item1 = None) -> FrequencyAutomatedConstraint: 2579 if isinstance(item1, int): 2580 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2581 2582 if isinstance(item1, str): 2583 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1)) 2584 2585 return FrequencyAutomatedConstraint(self._Entity.GetFrequency(item1))
2587 def GetRotation(self, item1 = None) -> RotationAutomatedConstraint: 2588 if isinstance(item1, int): 2589 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2590 2591 if isinstance(item1, str): 2592 return RotationAutomatedConstraint(self._Entity.GetRotation(item1)) 2593 2594 return RotationAutomatedConstraint(self._Entity.GetRotation(item1))
2596 def GetDisplacement(self, item1 = None) -> DisplacementAutomatedConstraint: 2597 if isinstance(item1, int): 2598 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2599 2600 if isinstance(item1, str): 2601 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1)) 2602 2603 return DisplacementAutomatedConstraint(self._Entity.GetDisplacement(item1))
2605 def Get(self, item1 = None) -> AutomatedConstraint: 2606 if isinstance(item1, str): 2607 return AutomatedConstraint(super().Get(item1)) 2608 2609 if isinstance(item1, int): 2610 return AutomatedConstraint(super().Get(item1)) 2611 2612 result = self._Entity.Get(item1) 2613 thisClass = type(result).__name__ 2614 givenClass = AutomatedConstraint 2615 for subclass in AutomatedConstraint.__subclasses__(): 2616 if subclass.__name__ == thisClass: 2617 givenClass = subclass 2618 return givenClass(result)
Inherited Members
2630class ManualConstraintCol(IdNameEntityCol[ManualConstraint]): 2631 def __init__(self, manualConstraintCol: _api.ManualConstraintCol): 2632 self._Entity = manualConstraintCol 2633 self._CollectedClass = ManualConstraint 2634 2635 @property 2636 def ManualConstraintColList(self) -> tuple[ManualConstraint]: 2637 return tuple([ManualConstraint(manualConstraintCol) for manualConstraintCol in self._Entity]) 2638 2639 @overload 2640 def GetFrequency(self, id: int) -> FrequencyManualConstraint: ... 2641 2642 @overload 2643 def GetFrequency(self, name: str) -> FrequencyManualConstraint: ... 2644 2645 @overload 2646 def GetBuckling(self, id: int) -> BucklingManualConstraint: ... 2647 2648 @overload 2649 def GetBuckling(self, name: str) -> BucklingManualConstraint: ... 2650 2651 @overload 2652 def GetDisplacement(self, id: int) -> DisplacementManualConstraint: ... 2653 2654 @overload 2655 def GetDisplacement(self, name: str) -> DisplacementManualConstraint: ... 2656 2657 @overload 2658 def GetStaticMoment(self, id: int) -> StaticMomentManualConstraint: ... 2659 2660 @overload 2661 def GetStaticMoment(self, name: str) -> StaticMomentManualConstraint: ... 2662 2663 def AddFrequencyConstraint(self, setName: str, limit: float, name: str = None) -> FrequencyManualConstraint: 2664 return FrequencyManualConstraint(self._Entity.AddFrequencyConstraint(setName, limit, name)) 2665 2666 def AddBucklingConstraint(self, setName: str, limit: float, name: str = None) -> BucklingManualConstraint: 2667 return BucklingManualConstraint(self._Entity.AddBucklingConstraint(setName, limit, name)) 2668 2669 def AddStaticMomentManualConstraint(self, setName: str, limit: float, name: str = None) -> StaticMomentManualConstraint: 2670 return StaticMomentManualConstraint(self._Entity.AddStaticMomentManualConstraint(setName, limit, name)) 2671 2672 def AddDisplacementConstraint(self, setName: str, gridIds: list[int], limit: float, name: str = None) -> DisplacementManualConstraint: 2673 gridIdsList = MakeCSharpIntList(gridIds) 2674 return DisplacementManualConstraint(self._Entity.AddDisplacementConstraint(setName, gridIdsList, limit, name)) 2675 2676 @overload 2677 def DeleteConstraint(self, name: str) -> bool: ... 2678 2679 @overload 2680 def DeleteConstraint(self, id: int) -> bool: ... 2681 2682 @overload 2683 def Get(self, name: str) -> ManualConstraint: ... 2684 2685 @overload 2686 def Get(self, id: int) -> ManualConstraint: ... 2687 2688 def GetFrequency(self, item1 = None) -> FrequencyManualConstraint: 2689 if isinstance(item1, int): 2690 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2691 2692 if isinstance(item1, str): 2693 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2694 2695 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2696 2697 def GetBuckling(self, item1 = None) -> BucklingManualConstraint: 2698 if isinstance(item1, int): 2699 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2700 2701 if isinstance(item1, str): 2702 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2703 2704 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2705 2706 def GetDisplacement(self, item1 = None) -> DisplacementManualConstraint: 2707 if isinstance(item1, int): 2708 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2709 2710 if isinstance(item1, str): 2711 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2712 2713 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2714 2715 def GetStaticMoment(self, item1 = None) -> StaticMomentManualConstraint: 2716 if isinstance(item1, int): 2717 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2718 2719 if isinstance(item1, str): 2720 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2721 2722 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2723 2724 def DeleteConstraint(self, item1 = None) -> bool: 2725 if isinstance(item1, str): 2726 return self._Entity.DeleteConstraint(item1) 2727 2728 if isinstance(item1, int): 2729 return self._Entity.DeleteConstraint(item1) 2730 2731 return self._Entity.DeleteConstraint(item1) 2732 2733 def Get(self, item1 = None) -> ManualConstraint: 2734 if isinstance(item1, str): 2735 return ManualConstraint(super().Get(item1)) 2736 2737 if isinstance(item1, int): 2738 return ManualConstraint(super().Get(item1)) 2739 2740 return ManualConstraint(self._Entity.Get(item1)) 2741 2742 def __getitem__(self, index: int): 2743 return self.ManualConstraintColList[index] 2744 2745 def __iter__(self): 2746 yield from self.ManualConstraintColList 2747 2748 def __len__(self): 2749 return len(self.ManualConstraintColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
2688 def GetFrequency(self, item1 = None) -> FrequencyManualConstraint: 2689 if isinstance(item1, int): 2690 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2691 2692 if isinstance(item1, str): 2693 return FrequencyManualConstraint(self._Entity.GetFrequency(item1)) 2694 2695 return FrequencyManualConstraint(self._Entity.GetFrequency(item1))
2697 def GetBuckling(self, item1 = None) -> BucklingManualConstraint: 2698 if isinstance(item1, int): 2699 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2700 2701 if isinstance(item1, str): 2702 return BucklingManualConstraint(self._Entity.GetBuckling(item1)) 2703 2704 return BucklingManualConstraint(self._Entity.GetBuckling(item1))
2706 def GetDisplacement(self, item1 = None) -> DisplacementManualConstraint: 2707 if isinstance(item1, int): 2708 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2709 2710 if isinstance(item1, str): 2711 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1)) 2712 2713 return DisplacementManualConstraint(self._Entity.GetDisplacement(item1))
2715 def GetStaticMoment(self, item1 = None) -> StaticMomentManualConstraint: 2716 if isinstance(item1, int): 2717 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2718 2719 if isinstance(item1, str): 2720 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1)) 2721 2722 return StaticMomentManualConstraint(self._Entity.GetStaticMoment(item1))
2672 def AddDisplacementConstraint(self, setName: str, gridIds: list[int], limit: float, name: str = None) -> DisplacementManualConstraint: 2673 gridIdsList = MakeCSharpIntList(gridIds) 2674 return DisplacementManualConstraint(self._Entity.AddDisplacementConstraint(setName, gridIdsList, limit, name))
Inherited Members
2752class HyperFea: 2753 def __init__(self, hyperFea: _api.HyperFea): 2754 self._Entity = hyperFea 2755 2756 @property 2757 def ManualConstraints(self) -> ManualConstraintCol: 2758 result = self._Entity.ManualConstraints 2759 return ManualConstraintCol(result) if result is not None else None 2760 2761 @property 2762 def AutomatedConstraints(self) -> AutomatedConstraintCol: 2763 result = self._Entity.AutomatedConstraints 2764 return AutomatedConstraintCol(result) if result is not None else None 2765 2766 def RunIterations(self, numberOfIterations: int, startWithSizing: bool) -> None: 2767 return self._Entity.RunIterations(numberOfIterations, startWithSizing) 2768 2769 def SetupSolver(self, solverPath: str, arguments: str) -> types.SimpleStatus: 2770 return types.SimpleStatus(self._Entity.SetupSolver(solverPath, arguments)) 2771 2772 def TestSolver(self) -> types.SimpleStatus: 2773 ''' 2774 Test FEA solver setup. 2775 ''' 2776 return types.SimpleStatus(self._Entity.TestSolver()) 2777 2778 def GetSolverSetup(self) -> types.HyperFeaSolver: 2779 ''' 2780 Get the current FEA solver setup. 2781 ''' 2782 return types.HyperFeaSolver(self._Entity.GetSolverSetup())
2785class FoamTemperature: 2786 ''' 2787 Foam material temperature dependent properties. 2788 ''' 2789 def __init__(self, foamTemperature: _api.FoamTemperature): 2790 self._Entity = foamTemperature 2791 2792 @property 2793 def Temperature(self) -> float: 2794 return self._Entity.Temperature 2795 2796 @property 2797 def Et(self) -> float: 2798 return self._Entity.Et 2799 2800 @property 2801 def Ec(self) -> float: 2802 return self._Entity.Ec 2803 2804 @property 2805 def G(self) -> float: 2806 return self._Entity.G 2807 2808 @property 2809 def Ef(self) -> float: 2810 return self._Entity.Ef 2811 2812 @property 2813 def Ftu(self) -> float: 2814 return self._Entity.Ftu 2815 2816 @property 2817 def Fcu(self) -> float: 2818 return self._Entity.Fcu 2819 2820 @property 2821 def Fsu(self) -> float: 2822 return self._Entity.Fsu 2823 2824 @property 2825 def Ffu(self) -> float: 2826 return self._Entity.Ffu 2827 2828 @property 2829 def K(self) -> float: 2830 return self._Entity.K 2831 2832 @property 2833 def C(self) -> float: 2834 return self._Entity.C 2835 2836 @Temperature.setter 2837 def Temperature(self, value: float) -> None: 2838 self._Entity.Temperature = value 2839 2840 @Et.setter 2841 def Et(self, value: float) -> None: 2842 self._Entity.Et = value 2843 2844 @Ec.setter 2845 def Ec(self, value: float) -> None: 2846 self._Entity.Ec = value 2847 2848 @G.setter 2849 def G(self, value: float) -> None: 2850 self._Entity.G = value 2851 2852 @Ef.setter 2853 def Ef(self, value: float) -> None: 2854 self._Entity.Ef = value 2855 2856 @Ftu.setter 2857 def Ftu(self, value: float) -> None: 2858 self._Entity.Ftu = value 2859 2860 @Fcu.setter 2861 def Fcu(self, value: float) -> None: 2862 self._Entity.Fcu = value 2863 2864 @Fsu.setter 2865 def Fsu(self, value: float) -> None: 2866 self._Entity.Fsu = value 2867 2868 @Ffu.setter 2869 def Ffu(self, value: float) -> None: 2870 self._Entity.Ffu = value 2871 2872 @K.setter 2873 def K(self, value: float) -> None: 2874 self._Entity.K = value 2875 2876 @C.setter 2877 def C(self, value: float) -> None: 2878 self._Entity.C = value
Foam material temperature dependent properties.
2881class Foam: 2882 ''' 2883 Foam material. 2884 ''' 2885 def __init__(self, foam: _api.Foam): 2886 self._Entity = foam 2887 2888 @property 2889 def MaterialFamilyName(self) -> str: 2890 return self._Entity.MaterialFamilyName 2891 2892 @property 2893 def Id(self) -> int: 2894 return self._Entity.Id 2895 2896 @property 2897 def CreationDate(self) -> DateTime: 2898 return self._Entity.CreationDate 2899 2900 @property 2901 def ModificationDate(self) -> DateTime: 2902 return self._Entity.ModificationDate 2903 2904 @property 2905 def Name(self) -> str: 2906 return self._Entity.Name 2907 2908 @property 2909 def Wet(self) -> bool: 2910 return self._Entity.Wet 2911 2912 @property 2913 def Density(self) -> float: 2914 return self._Entity.Density 2915 2916 @property 2917 def Form(self) -> str: 2918 return self._Entity.Form 2919 2920 @property 2921 def Specification(self) -> str: 2922 return self._Entity.Specification 2923 2924 @property 2925 def MaterialDescription(self) -> str: 2926 return self._Entity.MaterialDescription 2927 2928 @property 2929 def UserNote(self) -> str: 2930 return self._Entity.UserNote 2931 2932 @property 2933 def FemMaterialId(self) -> int: 2934 return self._Entity.FemMaterialId 2935 2936 @property 2937 def Cost(self) -> float: 2938 return self._Entity.Cost 2939 2940 @property 2941 def BucklingStiffnessKnockdown(self) -> float: 2942 return self._Entity.BucklingStiffnessKnockdown 2943 2944 @property 2945 def Absorption(self) -> float: 2946 return self._Entity.Absorption 2947 2948 @property 2949 def Manufacturer(self) -> str: 2950 return self._Entity.Manufacturer 2951 2952 @property 2953 def FoamTemperatureProperties(self) -> list[FoamTemperature]: 2954 return [FoamTemperature(foamTemperature) for foamTemperature in self._Entity.FoamTemperatureProperties] 2955 2956 @MaterialFamilyName.setter 2957 def MaterialFamilyName(self, value: str) -> None: 2958 self._Entity.MaterialFamilyName = value 2959 2960 @Name.setter 2961 def Name(self, value: str) -> None: 2962 self._Entity.Name = value 2963 2964 @Wet.setter 2965 def Wet(self, value: bool) -> None: 2966 self._Entity.Wet = value 2967 2968 @Density.setter 2969 def Density(self, value: float) -> None: 2970 self._Entity.Density = value 2971 2972 @Form.setter 2973 def Form(self, value: str) -> None: 2974 self._Entity.Form = value 2975 2976 @Specification.setter 2977 def Specification(self, value: str) -> None: 2978 self._Entity.Specification = value 2979 2980 @MaterialDescription.setter 2981 def MaterialDescription(self, value: str) -> None: 2982 self._Entity.MaterialDescription = value 2983 2984 @UserNote.setter 2985 def UserNote(self, value: str) -> None: 2986 self._Entity.UserNote = value 2987 2988 @FemMaterialId.setter 2989 def FemMaterialId(self, value: int) -> None: 2990 self._Entity.FemMaterialId = value 2991 2992 @Cost.setter 2993 def Cost(self, value: float) -> None: 2994 self._Entity.Cost = value 2995 2996 @BucklingStiffnessKnockdown.setter 2997 def BucklingStiffnessKnockdown(self, value: float) -> None: 2998 self._Entity.BucklingStiffnessKnockdown = value 2999 3000 @Absorption.setter 3001 def Absorption(self, value: float) -> None: 3002 self._Entity.Absorption = value 3003 3004 @Manufacturer.setter 3005 def Manufacturer(self, value: str) -> None: 3006 self._Entity.Manufacturer = value 3007 3008 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftu: float, fcu: float, fsu: float, ef: float = None, ffu: float = None, k: float = None, c: float = None) -> FoamTemperature: 3009 return FoamTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftu, fcu, fsu, ef, ffu, k, c)) 3010 3011 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3012 return self._Entity.DeleteTemperatureProperty(temperature) 3013 3014 def GetTemperature(self, lookupTemperature: float) -> FoamTemperature: 3015 return FoamTemperature(self._Entity.GetTemperature(lookupTemperature)) 3016 3017 def Save(self) -> None: 3018 ''' 3019 Save any changes to this foam material to the database. 3020 ''' 3021 return self._Entity.Save()
Foam material.
3008 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftu: float, fcu: float, fsu: float, ef: float = None, ffu: float = None, k: float = None, c: float = None) -> FoamTemperature: 3009 return FoamTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftu, fcu, fsu, ef, ffu, k, c))
3024class HoneycombTemperature: 3025 ''' 3026 Honeycomb material temperature dependent properties. 3027 ''' 3028 def __init__(self, honeycombTemperature: _api.HoneycombTemperature): 3029 self._Entity = honeycombTemperature 3030 3031 @property 3032 def Temperature(self) -> float: 3033 return self._Entity.Temperature 3034 3035 @property 3036 def Et(self) -> float: 3037 return self._Entity.Et 3038 3039 @property 3040 def Ec(self) -> float: 3041 return self._Entity.Ec 3042 3043 @property 3044 def Gw(self) -> float: 3045 return self._Entity.Gw 3046 3047 @property 3048 def Gl(self) -> float: 3049 return self._Entity.Gl 3050 3051 @property 3052 def Ftu(self) -> float: 3053 return self._Entity.Ftu 3054 3055 @property 3056 def Fcus(self) -> float: 3057 return self._Entity.Fcus 3058 3059 @property 3060 def Fcub(self) -> float: 3061 return self._Entity.Fcub 3062 3063 @property 3064 def Fcuc(self) -> float: 3065 return self._Entity.Fcuc 3066 3067 @property 3068 def Fsuw(self) -> float: 3069 return self._Entity.Fsuw 3070 3071 @property 3072 def Fsul(self) -> float: 3073 return self._Entity.Fsul 3074 3075 @property 3076 def SScfl(self) -> float: 3077 return self._Entity.SScfl 3078 3079 @property 3080 def SScfh(self) -> float: 3081 return self._Entity.SScfh 3082 3083 @property 3084 def Kl(self) -> float: 3085 return self._Entity.Kl 3086 3087 @property 3088 def Kw(self) -> float: 3089 return self._Entity.Kw 3090 3091 @property 3092 def Kt(self) -> float: 3093 return self._Entity.Kt 3094 3095 @property 3096 def C(self) -> float: 3097 return self._Entity.C 3098 3099 @Temperature.setter 3100 def Temperature(self, value: float) -> None: 3101 self._Entity.Temperature = value 3102 3103 @Et.setter 3104 def Et(self, value: float) -> None: 3105 self._Entity.Et = value 3106 3107 @Ec.setter 3108 def Ec(self, value: float) -> None: 3109 self._Entity.Ec = value 3110 3111 @Gw.setter 3112 def Gw(self, value: float) -> None: 3113 self._Entity.Gw = value 3114 3115 @Gl.setter 3116 def Gl(self, value: float) -> None: 3117 self._Entity.Gl = value 3118 3119 @Ftu.setter 3120 def Ftu(self, value: float) -> None: 3121 self._Entity.Ftu = value 3122 3123 @Fcus.setter 3124 def Fcus(self, value: float) -> None: 3125 self._Entity.Fcus = value 3126 3127 @Fcub.setter 3128 def Fcub(self, value: float) -> None: 3129 self._Entity.Fcub = value 3130 3131 @Fcuc.setter 3132 def Fcuc(self, value: float) -> None: 3133 self._Entity.Fcuc = value 3134 3135 @Fsuw.setter 3136 def Fsuw(self, value: float) -> None: 3137 self._Entity.Fsuw = value 3138 3139 @Fsul.setter 3140 def Fsul(self, value: float) -> None: 3141 self._Entity.Fsul = value 3142 3143 @SScfl.setter 3144 def SScfl(self, value: float) -> None: 3145 self._Entity.SScfl = value 3146 3147 @SScfh.setter 3148 def SScfh(self, value: float) -> None: 3149 self._Entity.SScfh = value 3150 3151 @Kl.setter 3152 def Kl(self, value: float) -> None: 3153 self._Entity.Kl = value 3154 3155 @Kw.setter 3156 def Kw(self, value: float) -> None: 3157 self._Entity.Kw = value 3158 3159 @Kt.setter 3160 def Kt(self, value: float) -> None: 3161 self._Entity.Kt = value 3162 3163 @C.setter 3164 def C(self, value: float) -> None: 3165 self._Entity.C = value
Honeycomb material temperature dependent properties.
3168class Honeycomb: 3169 ''' 3170 Honeycomb material. 3171 ''' 3172 def __init__(self, honeycomb: _api.Honeycomb): 3173 self._Entity = honeycomb 3174 3175 @property 3176 def MaterialFamilyName(self) -> str: 3177 return self._Entity.MaterialFamilyName 3178 3179 @property 3180 def Id(self) -> int: 3181 return self._Entity.Id 3182 3183 @property 3184 def CreationDate(self) -> DateTime: 3185 return self._Entity.CreationDate 3186 3187 @property 3188 def ModificationDate(self) -> DateTime: 3189 return self._Entity.ModificationDate 3190 3191 @property 3192 def Name(self) -> str: 3193 return self._Entity.Name 3194 3195 @property 3196 def Wet(self) -> bool: 3197 return self._Entity.Wet 3198 3199 @property 3200 def Density(self) -> float: 3201 return self._Entity.Density 3202 3203 @property 3204 def Form(self) -> str: 3205 return self._Entity.Form 3206 3207 @property 3208 def Specification(self) -> str: 3209 return self._Entity.Specification 3210 3211 @property 3212 def MaterialDescription(self) -> str: 3213 return self._Entity.MaterialDescription 3214 3215 @property 3216 def UserNote(self) -> str: 3217 return self._Entity.UserNote 3218 3219 @property 3220 def FemMaterialId(self) -> int: 3221 return self._Entity.FemMaterialId 3222 3223 @property 3224 def Cost(self) -> float: 3225 return self._Entity.Cost 3226 3227 @property 3228 def CellSize(self) -> float: 3229 return self._Entity.CellSize 3230 3231 @property 3232 def Manufacturer(self) -> str: 3233 return self._Entity.Manufacturer 3234 3235 @property 3236 def HoneycombTemperatureProperties(self) -> list[HoneycombTemperature]: 3237 return [HoneycombTemperature(honeycombTemperature) for honeycombTemperature in self._Entity.HoneycombTemperatureProperties] 3238 3239 @MaterialFamilyName.setter 3240 def MaterialFamilyName(self, value: str) -> None: 3241 self._Entity.MaterialFamilyName = value 3242 3243 @Name.setter 3244 def Name(self, value: str) -> None: 3245 self._Entity.Name = value 3246 3247 @Wet.setter 3248 def Wet(self, value: bool) -> None: 3249 self._Entity.Wet = value 3250 3251 @Density.setter 3252 def Density(self, value: float) -> None: 3253 self._Entity.Density = value 3254 3255 @Form.setter 3256 def Form(self, value: str) -> None: 3257 self._Entity.Form = value 3258 3259 @Specification.setter 3260 def Specification(self, value: str) -> None: 3261 self._Entity.Specification = value 3262 3263 @MaterialDescription.setter 3264 def MaterialDescription(self, value: str) -> None: 3265 self._Entity.MaterialDescription = value 3266 3267 @UserNote.setter 3268 def UserNote(self, value: str) -> None: 3269 self._Entity.UserNote = value 3270 3271 @FemMaterialId.setter 3272 def FemMaterialId(self, value: int) -> None: 3273 self._Entity.FemMaterialId = value 3274 3275 @Cost.setter 3276 def Cost(self, value: float) -> None: 3277 self._Entity.Cost = value 3278 3279 @CellSize.setter 3280 def CellSize(self, value: float) -> None: 3281 self._Entity.CellSize = value 3282 3283 @Manufacturer.setter 3284 def Manufacturer(self, value: str) -> None: 3285 self._Entity.Manufacturer = value 3286 3287 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, gw: float, gl: float, ftu: float, fcus: float, fcub: float, fcuc: float, fsuw: float, fsul: float, sScfl: float = None, sScfh: float = None, k1: float = None, k2: float = None, k3: float = None, c: float = None) -> HoneycombTemperature: 3288 return HoneycombTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, gw, gl, ftu, fcus, fcub, fcuc, fsuw, fsul, sScfl, sScfh, k1, k2, k3, c)) 3289 3290 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3291 return self._Entity.DeleteTemperatureProperty(temperature) 3292 3293 def GetTemperature(self, lookupTemperature: float) -> HoneycombTemperature: 3294 return HoneycombTemperature(self._Entity.GetTemperature(lookupTemperature)) 3295 3296 def Save(self) -> None: 3297 ''' 3298 Save any changes to this honeycomb material to the database. 3299 ''' 3300 return self._Entity.Save()
Honeycomb material.
3287 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, gw: float, gl: float, ftu: float, fcus: float, fcub: float, fcuc: float, fsuw: float, fsul: float, sScfl: float = None, sScfh: float = None, k1: float = None, k2: float = None, k3: float = None, c: float = None) -> HoneycombTemperature: 3288 return HoneycombTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, gw, gl, ftu, fcus, fcub, fcuc, fsuw, fsul, sScfl, sScfh, k1, k2, k3, c))
3303class IsotropicTemperature: 3304 ''' 3305 Isotropic material temperature dependent properties. 3306 ''' 3307 def __init__(self, isotropicTemperature: _api.IsotropicTemperature): 3308 self._Entity = isotropicTemperature 3309 3310 @property 3311 def Temperature(self) -> float: 3312 return self._Entity.Temperature 3313 3314 @property 3315 def Et(self) -> float: 3316 return self._Entity.Et 3317 3318 @property 3319 def Ec(self) -> float: 3320 return self._Entity.Ec 3321 3322 @property 3323 def G(self) -> float: 3324 return self._Entity.G 3325 3326 @property 3327 def n(self) -> float: 3328 return self._Entity.n 3329 3330 @property 3331 def F02(self) -> float: 3332 return self._Entity.F02 3333 3334 @property 3335 def FtuL(self) -> float: 3336 return self._Entity.FtuL 3337 3338 @property 3339 def FtyL(self) -> float: 3340 return self._Entity.FtyL 3341 3342 @property 3343 def FcyL(self) -> float: 3344 return self._Entity.FcyL 3345 3346 @property 3347 def FtuLT(self) -> float: 3348 return self._Entity.FtuLT 3349 3350 @property 3351 def FtyLT(self) -> float: 3352 return self._Entity.FtyLT 3353 3354 @property 3355 def FcyLT(self) -> float: 3356 return self._Entity.FcyLT 3357 3358 @property 3359 def Fsu(self) -> float: 3360 return self._Entity.Fsu 3361 3362 @property 3363 def Fbru15(self) -> float: 3364 return self._Entity.Fbru15 3365 3366 @property 3367 def Fbry15(self) -> float: 3368 return self._Entity.Fbry15 3369 3370 @property 3371 def Fbru20(self) -> float: 3372 return self._Entity.Fbru20 3373 3374 @property 3375 def Fbry20(self) -> float: 3376 return self._Entity.Fbry20 3377 3378 @property 3379 def alpha(self) -> float: 3380 return self._Entity.alpha 3381 3382 @property 3383 def K(self) -> float: 3384 return self._Entity.K 3385 3386 @property 3387 def C(self) -> float: 3388 return self._Entity.C 3389 3390 @property 3391 def etyL(self) -> float: 3392 return self._Entity.etyL 3393 3394 @property 3395 def ecyL(self) -> float: 3396 return self._Entity.ecyL 3397 3398 @property 3399 def etyLT(self) -> float: 3400 return self._Entity.etyLT 3401 3402 @property 3403 def ecyLT(self) -> float: 3404 return self._Entity.ecyLT 3405 3406 @property 3407 def esu(self) -> float: 3408 return self._Entity.esu 3409 3410 @property 3411 def Fpadh(self) -> float: 3412 return self._Entity.Fpadh 3413 3414 @property 3415 def Fsadh(self) -> float: 3416 return self._Entity.Fsadh 3417 3418 @property 3419 def esadh(self) -> float: 3420 return self._Entity.esadh 3421 3422 @property 3423 def cd(self) -> float: 3424 return self._Entity.cd 3425 3426 @property 3427 def Ffwt(self) -> float: 3428 return self._Entity.Ffwt 3429 3430 @property 3431 def Ffxz(self) -> float: 3432 return self._Entity.Ffxz 3433 3434 @property 3435 def Ffyz(self) -> float: 3436 return self._Entity.Ffyz 3437 3438 @property 3439 def FtFatigue(self) -> float: 3440 return self._Entity.FtFatigue 3441 3442 @property 3443 def FcFatigue(self) -> float: 3444 return self._Entity.FcFatigue 3445 3446 @Temperature.setter 3447 def Temperature(self, value: float) -> None: 3448 self._Entity.Temperature = value 3449 3450 @Et.setter 3451 def Et(self, value: float) -> None: 3452 self._Entity.Et = value 3453 3454 @Ec.setter 3455 def Ec(self, value: float) -> None: 3456 self._Entity.Ec = value 3457 3458 @G.setter 3459 def G(self, value: float) -> None: 3460 self._Entity.G = value 3461 3462 @n.setter 3463 def n(self, value: float) -> None: 3464 self._Entity.n = value 3465 3466 @F02.setter 3467 def F02(self, value: float) -> None: 3468 self._Entity.F02 = value 3469 3470 @FtuL.setter 3471 def FtuL(self, value: float) -> None: 3472 self._Entity.FtuL = value 3473 3474 @FtyL.setter 3475 def FtyL(self, value: float) -> None: 3476 self._Entity.FtyL = value 3477 3478 @FcyL.setter 3479 def FcyL(self, value: float) -> None: 3480 self._Entity.FcyL = value 3481 3482 @FtuLT.setter 3483 def FtuLT(self, value: float) -> None: 3484 self._Entity.FtuLT = value 3485 3486 @FtyLT.setter 3487 def FtyLT(self, value: float) -> None: 3488 self._Entity.FtyLT = value 3489 3490 @FcyLT.setter 3491 def FcyLT(self, value: float) -> None: 3492 self._Entity.FcyLT = value 3493 3494 @Fsu.setter 3495 def Fsu(self, value: float) -> None: 3496 self._Entity.Fsu = value 3497 3498 @Fbru15.setter 3499 def Fbru15(self, value: float) -> None: 3500 self._Entity.Fbru15 = value 3501 3502 @Fbry15.setter 3503 def Fbry15(self, value: float) -> None: 3504 self._Entity.Fbry15 = value 3505 3506 @Fbru20.setter 3507 def Fbru20(self, value: float) -> None: 3508 self._Entity.Fbru20 = value 3509 3510 @Fbry20.setter 3511 def Fbry20(self, value: float) -> None: 3512 self._Entity.Fbry20 = value 3513 3514 @alpha.setter 3515 def alpha(self, value: float) -> None: 3516 self._Entity.alpha = value 3517 3518 @K.setter 3519 def K(self, value: float) -> None: 3520 self._Entity.K = value 3521 3522 @C.setter 3523 def C(self, value: float) -> None: 3524 self._Entity.C = value 3525 3526 @etyL.setter 3527 def etyL(self, value: float) -> None: 3528 self._Entity.etyL = value 3529 3530 @ecyL.setter 3531 def ecyL(self, value: float) -> None: 3532 self._Entity.ecyL = value 3533 3534 @etyLT.setter 3535 def etyLT(self, value: float) -> None: 3536 self._Entity.etyLT = value 3537 3538 @ecyLT.setter 3539 def ecyLT(self, value: float) -> None: 3540 self._Entity.ecyLT = value 3541 3542 @esu.setter 3543 def esu(self, value: float) -> None: 3544 self._Entity.esu = value 3545 3546 @Fpadh.setter 3547 def Fpadh(self, value: float) -> None: 3548 self._Entity.Fpadh = value 3549 3550 @Fsadh.setter 3551 def Fsadh(self, value: float) -> None: 3552 self._Entity.Fsadh = value 3553 3554 @esadh.setter 3555 def esadh(self, value: float) -> None: 3556 self._Entity.esadh = value 3557 3558 @cd.setter 3559 def cd(self, value: float) -> None: 3560 self._Entity.cd = value 3561 3562 @Ffwt.setter 3563 def Ffwt(self, value: float) -> None: 3564 self._Entity.Ffwt = value 3565 3566 @Ffxz.setter 3567 def Ffxz(self, value: float) -> None: 3568 self._Entity.Ffxz = value 3569 3570 @Ffyz.setter 3571 def Ffyz(self, value: float) -> None: 3572 self._Entity.Ffyz = value 3573 3574 @FtFatigue.setter 3575 def FtFatigue(self, value: float) -> None: 3576 self._Entity.FtFatigue = value 3577 3578 @FcFatigue.setter 3579 def FcFatigue(self, value: float) -> None: 3580 self._Entity.FcFatigue = value
Isotropic material temperature dependent properties.
3583class Isotropic: 3584 ''' 3585 Isotropic material. 3586 ''' 3587 def __init__(self, isotropic: _api.Isotropic): 3588 self._Entity = isotropic 3589 3590 @property 3591 def MaterialFamilyName(self) -> str: 3592 return self._Entity.MaterialFamilyName 3593 3594 @property 3595 def Id(self) -> int: 3596 return self._Entity.Id 3597 3598 @property 3599 def CreationDate(self) -> DateTime: 3600 return self._Entity.CreationDate 3601 3602 @property 3603 def ModificationDate(self) -> DateTime: 3604 return self._Entity.ModificationDate 3605 3606 @property 3607 def Name(self) -> str: 3608 return self._Entity.Name 3609 3610 @property 3611 def Form(self) -> str: 3612 return self._Entity.Form 3613 3614 @property 3615 def Specification(self) -> str: 3616 return self._Entity.Specification 3617 3618 @property 3619 def Temper(self) -> str: 3620 return self._Entity.Temper 3621 3622 @property 3623 def Basis(self) -> str: 3624 return self._Entity.Basis 3625 3626 @property 3627 def Density(self) -> float: 3628 return self._Entity.Density 3629 3630 @property 3631 def MaterialDescription(self) -> str: 3632 return self._Entity.MaterialDescription 3633 3634 @property 3635 def UserNote(self) -> str: 3636 return self._Entity.UserNote 3637 3638 @property 3639 def FemMaterialId(self) -> int: 3640 return self._Entity.FemMaterialId 3641 3642 @property 3643 def Cost(self) -> float: 3644 return self._Entity.Cost 3645 3646 @property 3647 def BucklingStiffnessKnockdown(self) -> float: 3648 return self._Entity.BucklingStiffnessKnockdown 3649 3650 @property 3651 def IsotropicTemperatureProperties(self) -> list[IsotropicTemperature]: 3652 return [IsotropicTemperature(isotropicTemperature) for isotropicTemperature in self._Entity.IsotropicTemperatureProperties] 3653 3654 @MaterialFamilyName.setter 3655 def MaterialFamilyName(self, value: str) -> None: 3656 self._Entity.MaterialFamilyName = value 3657 3658 @Name.setter 3659 def Name(self, value: str) -> None: 3660 self._Entity.Name = value 3661 3662 @Form.setter 3663 def Form(self, value: str) -> None: 3664 self._Entity.Form = value 3665 3666 @Specification.setter 3667 def Specification(self, value: str) -> None: 3668 self._Entity.Specification = value 3669 3670 @Temper.setter 3671 def Temper(self, value: str) -> None: 3672 self._Entity.Temper = value 3673 3674 @Basis.setter 3675 def Basis(self, value: str) -> None: 3676 self._Entity.Basis = value 3677 3678 @Density.setter 3679 def Density(self, value: float) -> None: 3680 self._Entity.Density = value 3681 3682 @MaterialDescription.setter 3683 def MaterialDescription(self, value: str) -> None: 3684 self._Entity.MaterialDescription = value 3685 3686 @UserNote.setter 3687 def UserNote(self, value: str) -> None: 3688 self._Entity.UserNote = value 3689 3690 @FemMaterialId.setter 3691 def FemMaterialId(self, value: int) -> None: 3692 self._Entity.FemMaterialId = value 3693 3694 @Cost.setter 3695 def Cost(self, value: float) -> None: 3696 self._Entity.Cost = value 3697 3698 @BucklingStiffnessKnockdown.setter 3699 def BucklingStiffnessKnockdown(self, value: float) -> None: 3700 self._Entity.BucklingStiffnessKnockdown = value 3701 3702 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftuL: float, ftyL: float, fcyL: float, ftuLT: float, ftyLT: float, fcyLT: float, fsu: float, alpha: float, n: float = None, f02: float = None, k: float = None, c: float = None, fbru15: float = None, fbry15: float = None, fbru20: float = None, fbry20: float = None, etyL: float = None, ecyL: float = None, etyLT: float = None, ecyLT: float = None, esu: float = None, fpadh: float = None, fsadh: float = None, esadh: float = None, cd: float = None, ffwt: float = None, ffxz: float = None, ffyz: float = None, ftFatigue: float = None, fcFatigue: float = None) -> IsotropicTemperature: 3703 return IsotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftuL, ftyL, fcyL, ftuLT, ftyLT, fcyLT, fsu, alpha, n, f02, k, c, fbru15, fbry15, fbru20, fbry20, etyL, ecyL, etyLT, ecyLT, esu, fpadh, fsadh, esadh, cd, ffwt, ffxz, ffyz, ftFatigue, fcFatigue)) 3704 3705 def DeleteTemperatureProperty(self, temperature: float) -> bool: 3706 return self._Entity.DeleteTemperatureProperty(temperature) 3707 3708 def GetTemperature(self, lookupTemperature: float) -> IsotropicTemperature: 3709 return IsotropicTemperature(self._Entity.GetTemperature(lookupTemperature)) 3710 3711 def Save(self) -> None: 3712 ''' 3713 Save any changes to this isotropic material to the database. 3714 ''' 3715 return self._Entity.Save()
Isotropic material.
3702 def AddTemperatureProperty(self, temperature: float, et: float, ec: float, g: float, ftuL: float, ftyL: float, fcyL: float, ftuLT: float, ftyLT: float, fcyLT: float, fsu: float, alpha: float, n: float = None, f02: float = None, k: float = None, c: float = None, fbru15: float = None, fbry15: float = None, fbru20: float = None, fbry20: float = None, etyL: float = None, ecyL: float = None, etyLT: float = None, ecyLT: float = None, esu: float = None, fpadh: float = None, fsadh: float = None, esadh: float = None, cd: float = None, ffwt: float = None, ffxz: float = None, ffyz: float = None, ftFatigue: float = None, fcFatigue: float = None) -> IsotropicTemperature: 3703 return IsotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et, ec, g, ftuL, ftyL, fcyL, ftuLT, ftyLT, fcyLT, fsu, alpha, n, f02, k, c, fbru15, fbry15, fbru20, fbry20, etyL, ecyL, etyLT, ecyLT, esu, fpadh, fsadh, esadh, cd, ffwt, ffxz, ffyz, ftFatigue, fcFatigue))
3718class LaminateBase(ABC): 3719 def __init__(self, laminateBase: _api.LaminateBase): 3720 self._Entity = laminateBase 3721 3722 @property 3723 def Id(self) -> int: 3724 return self._Entity.Id 3725 3726 @property 3727 def Name(self) -> str: 3728 return self._Entity.Name 3729 3730 @property 3731 def IsEditable(self) -> bool: 3732 return self._Entity.IsEditable 3733 3734 @property 3735 def MaterialFamilyName(self) -> str: 3736 return self._Entity.MaterialFamilyName 3737 3738 @property 3739 def LayerCount(self) -> int: 3740 return self._Entity.LayerCount 3741 3742 @property 3743 def Density(self) -> float: 3744 return self._Entity.Density 3745 3746 @property 3747 def Thickness(self) -> float: 3748 return self._Entity.Thickness 3749 3750 @property 3751 def LaminateFamilyId(self) -> int: 3752 return self._Entity.LaminateFamilyId 3753 3754 @property 3755 def LaminateFamilyOrder(self) -> int: 3756 return self._Entity.LaminateFamilyOrder 3757 3758 @property 3759 def HyperLaminate(self) -> bool: 3760 return self._Entity.HyperLaminate 3761 3762 @Name.setter 3763 def Name(self, value: str) -> None: 3764 self._Entity.Name = value 3765 3766 @MaterialFamilyName.setter 3767 def MaterialFamilyName(self, value: str) -> None: 3768 self._Entity.MaterialFamilyName = value 3769 3770 @abstractmethod 3771 def Save(self) -> None: 3772 ''' 3773 Save the laminate. 3774 ''' 3775 return self._Entity.Save()
3778class LaminateFamily(IdNameEntity): 3779 def __init__(self, laminateFamily: _api.LaminateFamily): 3780 self._Entity = laminateFamily 3781 3782 @property 3783 def Laminates(self) -> list[LaminateBase]: 3784 return [LaminateBase(laminateBase) for laminateBase in self._Entity.Laminates] 3785 3786 @property 3787 def ModificationDate(self) -> DateTime: 3788 return self._Entity.ModificationDate 3789 3790 @property 3791 def PlankSetting(self) -> types.LaminateFamilySettingType: 3792 return types.LaminateFamilySettingType[self._Entity.PlankSetting.ToString()] 3793 3794 @property 3795 def PlankMinRatio(self) -> float: 3796 return self._Entity.PlankMinRatio 3797 3798 @property 3799 def PlankMaxRatio(self) -> float: 3800 return self._Entity.PlankMaxRatio 3801 3802 @property 3803 def FootChargeSetting(self) -> types.LaminateFamilySettingType: 3804 return types.LaminateFamilySettingType[self._Entity.FootChargeSetting.ToString()] 3805 3806 @property 3807 def FootChargeMinRatio(self) -> float: 3808 return self._Entity.FootChargeMinRatio 3809 3810 @property 3811 def FootChargeMaxRatio(self) -> float: 3812 return self._Entity.FootChargeMaxRatio 3813 3814 @property 3815 def WebChargeSetting(self) -> types.LaminateFamilySettingType: 3816 return types.LaminateFamilySettingType[self._Entity.WebChargeSetting.ToString()] 3817 3818 @property 3819 def WebChargeMinRatio(self) -> float: 3820 return self._Entity.WebChargeMinRatio 3821 3822 @property 3823 def WebChargeMaxRatio(self) -> float: 3824 return self._Entity.WebChargeMaxRatio 3825 3826 @property 3827 def CapChargeSetting(self) -> types.LaminateFamilySettingType: 3828 return types.LaminateFamilySettingType[self._Entity.CapChargeSetting.ToString()] 3829 3830 @property 3831 def CapChargeMinRatio(self) -> float: 3832 return self._Entity.CapChargeMinRatio 3833 3834 @property 3835 def CapChargeMaxRatio(self) -> float: 3836 return self._Entity.CapChargeMaxRatio 3837 3838 @property 3839 def CapCoverSetting(self) -> types.LaminateFamilySettingType: 3840 return types.LaminateFamilySettingType[self._Entity.CapCoverSetting.ToString()] 3841 3842 @property 3843 def CapCoverMinRatio(self) -> float: 3844 return self._Entity.CapCoverMinRatio 3845 3846 @property 3847 def CapCoverMaxRatio(self) -> float: 3848 return self._Entity.CapCoverMaxRatio 3849 3850 @property 3851 def DropPattern(self) -> types.PlyDropPattern: 3852 return types.PlyDropPattern[self._Entity.DropPattern.ToString()] 3853 3854 @property 3855 def LaminateStiffenerProfile(self) -> types.StiffenerProfile: 3856 return types.StiffenerProfile[self._Entity.LaminateStiffenerProfile.ToString()]
Represents an entity with an ID and Name.
Inherited Members
3859class LaminateLayerBase(ABC): 3860 def __init__(self, laminateLayerBase: _api.LaminateLayerBase): 3861 self._Entity = laminateLayerBase 3862 3863 @property 3864 def LayerId(self) -> int: 3865 return self._Entity.LayerId 3866 3867 @property 3868 def LayerMaterial(self) -> str: 3869 return self._Entity.LayerMaterial 3870 3871 @property 3872 def LayerMaterialType(self) -> types.MaterialType: 3873 ''' 3874 Represents a material's type. 3875 ''' 3876 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3877 3878 @property 3879 def Angle(self) -> float: 3880 return self._Entity.Angle 3881 3882 @property 3883 def Thickness(self) -> float: 3884 return self._Entity.Thickness 3885 3886 @property 3887 def IsFabric(self) -> bool: 3888 return self._Entity.IsFabric 3889 3890 @Angle.setter 3891 @abstractmethod 3892 def Angle(self, value: float) -> None: 3893 self._Entity.Angle = value 3894 3895 def SetThickness(self, thickness: float) -> None: 3896 return self._Entity.SetThickness(thickness) 3897 3898 @overload 3899 def SetMaterial(self, matId: int) -> bool: ... 3900 3901 @overload 3902 def SetMaterial(self, matName: str) -> bool: ... 3903 3904 def SetMaterial(self, item1 = None) -> bool: 3905 if isinstance(item1, int): 3906 return self._Entity.SetMaterial(item1) 3907 3908 if isinstance(item1, str): 3909 return self._Entity.SetMaterial(item1) 3910 3911 return self._Entity.SetMaterial(item1)
3871 @property 3872 def LayerMaterialType(self) -> types.MaterialType: 3873 ''' 3874 Represents a material's type. 3875 ''' 3876 return types.MaterialType[self._Entity.LayerMaterialType.ToString()]
Represents a material's type.
3914class LaminateLayer(LaminateLayerBase): 3915 ''' 3916 Layer in a non-stiffener laminate. 3917 ''' 3918 def __init__(self, laminateLayer: _api.LaminateLayer): 3919 self._Entity = laminateLayer 3920 3921 @property 3922 def LayerId(self) -> int: 3923 return self._Entity.LayerId 3924 3925 @property 3926 def LayerMaterialType(self) -> types.MaterialType: 3927 ''' 3928 Represents a material's type. 3929 ''' 3930 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 3931 3932 @property 3933 def Angle(self) -> float: 3934 return self._Entity.Angle 3935 3936 @property 3937 def Thickness(self) -> float: 3938 return self._Entity.Thickness 3939 3940 @property 3941 def IsFabric(self) -> bool: 3942 return self._Entity.IsFabric 3943 3944 @Angle.setter 3945 def Angle(self, value: float) -> None: 3946 self._Entity.Angle = value 3947 3948 @overload 3949 def SetMaterial(self, matId: int) -> bool: ... 3950 3951 @overload 3952 def SetMaterial(self, matName: str) -> bool: ... 3953 3954 def SetMaterial(self, item1 = None) -> bool: 3955 if isinstance(item1, int): 3956 return bool(super().SetMaterial(item1)) 3957 3958 if isinstance(item1, str): 3959 return bool(super().SetMaterial(item1)) 3960 3961 return self._Entity.SetMaterial(item1)
Layer in a non-stiffener laminate.
3925 @property 3926 def LayerMaterialType(self) -> types.MaterialType: 3927 ''' 3928 Represents a material's type. 3929 ''' 3930 return types.MaterialType[self._Entity.LayerMaterialType.ToString()]
Represents a material's type.
Inherited Members
3964class Laminate(LaminateBase): 3965 ''' 3966 Laminate 3967 ''' 3968 def __init__(self, laminate: _api.Laminate): 3969 self._Entity = laminate 3970 3971 @property 3972 def Layers(self) -> list[LaminateLayer]: 3973 return [LaminateLayer(laminateLayer) for laminateLayer in self._Entity.Layers] 3974 3975 def AddLayer(self, materialName: str, angle: float, thickness: float = None) -> LaminateLayer: 3976 return LaminateLayer(self._Entity.AddLayer(materialName, angle, thickness)) 3977 3978 def InsertLayer(self, layerId: int, materialName: str, angle: float, thickness: float = None) -> LaminateLayer: 3979 return LaminateLayer(self._Entity.InsertLayer(layerId, materialName, angle, thickness)) 3980 3981 def RemoveLayer(self, layerId: int) -> bool: 3982 return self._Entity.RemoveLayer(layerId) 3983 3984 def Save(self) -> None: 3985 ''' 3986 Save any changes to this laminate material to the database. 3987 ''' 3988 return self._Entity.Save()
Laminate
3991class StiffenerLaminateLayer(LaminateLayerBase): 3992 ''' 3993 Stiffener Laminate Layer 3994 ''' 3995 def __init__(self, stiffenerLaminateLayer: _api.StiffenerLaminateLayer): 3996 self._Entity = stiffenerLaminateLayer 3997 3998 @property 3999 def LayerLocations(self) -> list[types.StiffenerLaminateLayerLocation]: 4000 return [types.StiffenerLaminateLayerLocation[stiffenerLaminateLayerLocation.ToString()] for stiffenerLaminateLayerLocation in self._Entity.LayerLocations] 4001 4002 @property 4003 def LayerId(self) -> int: 4004 return self._Entity.LayerId 4005 4006 @property 4007 def LayerMaterialType(self) -> types.MaterialType: 4008 ''' 4009 Represents a material's type. 4010 ''' 4011 return types.MaterialType[self._Entity.LayerMaterialType.ToString()] 4012 4013 @property 4014 def Angle(self) -> float: 4015 return self._Entity.Angle 4016 4017 @property 4018 def Thickness(self) -> float: 4019 return self._Entity.Thickness 4020 4021 @property 4022 def IsFabric(self) -> bool: 4023 return self._Entity.IsFabric 4024 4025 @Angle.setter 4026 def Angle(self, value: float) -> None: 4027 self._Entity.Angle = value 4028 4029 def AddLayerLocation(self, location: types.StiffenerLaminateLayerLocation) -> None: 4030 return self._Entity.AddLayerLocation(_types.StiffenerLaminateLayerLocation(location.value)) 4031 4032 def RemoveLayerLocation(self, location: types.StiffenerLaminateLayerLocation) -> bool: 4033 return self._Entity.RemoveLayerLocation(_types.StiffenerLaminateLayerLocation(location.value)) 4034 4035 @overload 4036 def SetMaterial(self, matId: int) -> bool: ... 4037 4038 @overload 4039 def SetMaterial(self, matName: str) -> bool: ... 4040 4041 def SetMaterial(self, item1 = None) -> bool: 4042 if isinstance(item1, int): 4043 return bool(super().SetMaterial(item1)) 4044 4045 if isinstance(item1, str): 4046 return bool(super().SetMaterial(item1)) 4047 4048 return self._Entity.SetMaterial(item1)
Stiffener Laminate Layer
4006 @property 4007 def LayerMaterialType(self) -> types.MaterialType: 4008 ''' 4009 Represents a material's type. 4010 ''' 4011 return types.MaterialType[self._Entity.LayerMaterialType.ToString()]
Represents a material's type.
Inherited Members
4051class StiffenerLaminate(LaminateBase): 4052 ''' 4053 Stiffener Laminate 4054 ''' 4055 def __init__(self, stiffenerLaminate: _api.StiffenerLaminate): 4056 self._Entity = stiffenerLaminate 4057 4058 @property 4059 def Layers(self) -> list[StiffenerLaminateLayer]: 4060 return [StiffenerLaminateLayer(stiffenerLaminateLayer) for stiffenerLaminateLayer in self._Entity.Layers] 4061 4062 @property 4063 def LaminateStiffenerProfile(self) -> types.StiffenerProfile: 4064 return types.StiffenerProfile[self._Entity.LaminateStiffenerProfile.ToString()] 4065 4066 @overload 4067 def AddLayer(self, location: types.StiffenerLaminateLayerLocation, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4068 4069 @overload 4070 def InsertLayer(self, location: types.StiffenerLaminateLayerLocation, layerId: int, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4071 4072 @overload 4073 def AddLayer(self, locations: tuple[types.StiffenerLaminateLayerLocation], materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4074 4075 @overload 4076 def InsertLayer(self, locations: tuple[types.StiffenerLaminateLayerLocation], layerId: int, materialName: str, angle: float, thickness: float = None) -> StiffenerLaminateLayer: ... 4077 4078 def RemoveLayer(self, layerId: int) -> bool: 4079 return self._Entity.RemoveLayer(layerId) 4080 4081 def Save(self) -> None: 4082 ''' 4083 Save laminate to database. 4084 ''' 4085 return self._Entity.Save() 4086 4087 def AddLayer(self, item1 = None, item2 = None, item3 = None, item4 = None) -> StiffenerLaminateLayer: 4088 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4089 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)) 4090 4091 if isinstance(item1, tuple) and item1 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4092 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4093 if item1 is not None: 4094 for thing in item1: 4095 if thing is not None: 4096 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4097 locationsEnumerable = IEnumerable(locationsList) 4098 return StiffenerLaminateLayer(self._Entity.AddLayer(locationsEnumerable, item2, item3, item4)) 4099 4100 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)) 4101 4102 def InsertLayer(self, item1 = None, item2 = None, item3 = None, item4 = None, item5 = None) -> StiffenerLaminateLayer: 4103 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4104 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)) 4105 4106 if isinstance(item1, tuple) and item1 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4107 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4108 if item1 is not None: 4109 for thing in item1: 4110 if thing is not None: 4111 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4112 locationsEnumerable = IEnumerable(locationsList) 4113 return StiffenerLaminateLayer(self._Entity.InsertLayer(locationsEnumerable, item2, item3, item4, item5)) 4114 4115 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5))
Stiffener Laminate
4087 def AddLayer(self, item1 = None, item2 = None, item3 = None, item4 = None) -> StiffenerLaminateLayer: 4088 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4089 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4)) 4090 4091 if isinstance(item1, tuple) and item1 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, str) and isinstance(item3, float) and isinstance(item4, float): 4092 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4093 if item1 is not None: 4094 for thing in item1: 4095 if thing is not None: 4096 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4097 locationsEnumerable = IEnumerable(locationsList) 4098 return StiffenerLaminateLayer(self._Entity.AddLayer(locationsEnumerable, item2, item3, item4)) 4099 4100 return StiffenerLaminateLayer(self._Entity.AddLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4))
4102 def InsertLayer(self, item1 = None, item2 = None, item3 = None, item4 = None, item5 = None) -> StiffenerLaminateLayer: 4103 if isinstance(item1, types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4104 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5)) 4105 4106 if isinstance(item1, tuple) and item1 and isinstance(item1[0], types.StiffenerLaminateLayerLocation) and isinstance(item2, int) and isinstance(item3, str) and isinstance(item4, float) and isinstance(item5, float): 4107 locationsList = List[_types.StiffenerLaminateLayerLocation]() 4108 if item1 is not None: 4109 for thing in item1: 4110 if thing is not None: 4111 locationsList.Add(_types.StiffenerLaminateLayerLocation(thing.value)) 4112 locationsEnumerable = IEnumerable(locationsList) 4113 return StiffenerLaminateLayer(self._Entity.InsertLayer(locationsEnumerable, item2, item3, item4, item5)) 4114 4115 return StiffenerLaminateLayer(self._Entity.InsertLayer(_types.StiffenerLaminateLayerLocation(item1.value), item2, item3, item4, item5))
4118class OrthotropicCorrectionFactorBase(ABC): 4119 ''' 4120 Orthotropic material correction factor. 4121 ''' 4122 def __init__(self, orthotropicCorrectionFactorBase: _api.OrthotropicCorrectionFactorBase): 4123 self._Entity = orthotropicCorrectionFactorBase 4124 4125 @property 4126 def CorrectionId(self) -> types.CorrectionId: 4127 ''' 4128 Correction ID for a correction factor. (Columns in HyperX) 4129 ''' 4130 return types.CorrectionId[self._Entity.CorrectionId.ToString()] 4131 4132 @property 4133 def PropertyId(self) -> types.CorrectionProperty: 4134 ''' 4135 Property name for a correction factor. (Rows in HyperX) 4136 ''' 4137 return types.CorrectionProperty[self._Entity.PropertyId.ToString()]
Orthotropic material correction factor.
4125 @property 4126 def CorrectionId(self) -> types.CorrectionId: 4127 ''' 4128 Correction ID for a correction factor. (Columns in HyperX) 4129 ''' 4130 return types.CorrectionId[self._Entity.CorrectionId.ToString()]
Correction ID for a correction factor. (Columns in HyperX)
4132 @property 4133 def PropertyId(self) -> types.CorrectionProperty: 4134 ''' 4135 Property name for a correction factor. (Rows in HyperX) 4136 ''' 4137 return types.CorrectionProperty[self._Entity.PropertyId.ToString()]
Property name for a correction factor. (Rows in HyperX)
4140class OrthotropicCorrectionFactorPoint: 4141 ''' 4142 Pointer to an Equation-based or Tabular Correction Factor. 4143 ''' 4144 def __init__(self, orthotropicCorrectionFactorPoint: _api.OrthotropicCorrectionFactorPoint): 4145 self._Entity = orthotropicCorrectionFactorPoint 4146 4147 def Create_OrthotropicCorrectionFactorPoint(property: types.CorrectionProperty, id: types.CorrectionId): 4148 return OrthotropicCorrectionFactorPoint(_api.OrthotropicCorrectionFactorPoint(_types.CorrectionProperty(property.value), _types.CorrectionId(id.value))) 4149 4150 @property 4151 def CorrectionProperty(self) -> types.CorrectionProperty: 4152 ''' 4153 Property name for a correction factor. (Rows in HyperX) 4154 ''' 4155 return types.CorrectionProperty[self._Entity.CorrectionProperty.ToString()] 4156 4157 @property 4158 def CorrectionId(self) -> types.CorrectionId: 4159 ''' 4160 Correction ID for a correction factor. (Columns in HyperX) 4161 ''' 4162 return types.CorrectionId[self._Entity.CorrectionId.ToString()] 4163 4164 @overload 4165 def Equals(self, other) -> bool: ... 4166 4167 @overload 4168 def Equals(self, obj) -> bool: ... 4169 4170 def GetHashCode(self) -> int: 4171 return self._Entity.GetHashCode() 4172 4173 def Equals(self, item1 = None) -> bool: 4174 if isinstance(item1, OrthotropicCorrectionFactorPoint): 4175 return self._Entity.Equals(item1._Entity) 4176 4177 return self._Entity.Equals(item1._Entity)
Pointer to an Equation-based or Tabular Correction Factor.
4150 @property 4151 def CorrectionProperty(self) -> types.CorrectionProperty: 4152 ''' 4153 Property name for a correction factor. (Rows in HyperX) 4154 ''' 4155 return types.CorrectionProperty[self._Entity.CorrectionProperty.ToString()]
Property name for a correction factor. (Rows in HyperX)
4157 @property 4158 def CorrectionId(self) -> types.CorrectionId: 4159 ''' 4160 Correction ID for a correction factor. (Columns in HyperX) 4161 ''' 4162 return types.CorrectionId[self._Entity.CorrectionId.ToString()]
Correction ID for a correction factor. (Columns in HyperX)
4180class OrthotropicCorrectionFactorValue: 4181 ''' 4182 Orthotropic material equation-based correction factor value. (NOT TABULAR) 4183 ''' 4184 def __init__(self, orthotropicCorrectionFactorValue: _api.OrthotropicCorrectionFactorValue): 4185 self._Entity = orthotropicCorrectionFactorValue 4186 4187 @property 4188 def Property(self) -> types.CorrectionProperty: 4189 ''' 4190 Property name for a correction factor. (Rows in HyperX) 4191 ''' 4192 return types.CorrectionProperty[self._Entity.Property.ToString()] 4193 4194 @property 4195 def Correction(self) -> types.CorrectionId: 4196 ''' 4197 Correction ID for a correction factor. (Columns in HyperX) 4198 ''' 4199 return types.CorrectionId[self._Entity.Correction.ToString()] 4200 4201 @property 4202 def Equation(self) -> types.CorrectionEquation: 4203 ''' 4204 Equation for a correction factor. 4205 ''' 4206 return types.CorrectionEquation[self._Entity.Equation.ToString()] 4207 4208 @property 4209 def EquationParameter(self) -> types.EquationParameterId: 4210 ''' 4211 Correction factor parameter names. 4212 ''' 4213 return types.EquationParameterId[self._Entity.EquationParameter.ToString()] 4214 4215 @property 4216 def Value(self) -> float: 4217 return self._Entity.Value 4218 4219 @Value.setter 4220 def Value(self, value: float) -> None: 4221 self._Entity.Value = value
Orthotropic material equation-based correction factor value. (NOT TABULAR)
4187 @property 4188 def Property(self) -> types.CorrectionProperty: 4189 ''' 4190 Property name for a correction factor. (Rows in HyperX) 4191 ''' 4192 return types.CorrectionProperty[self._Entity.Property.ToString()]
Property name for a correction factor. (Rows in HyperX)
4194 @property 4195 def Correction(self) -> types.CorrectionId: 4196 ''' 4197 Correction ID for a correction factor. (Columns in HyperX) 4198 ''' 4199 return types.CorrectionId[self._Entity.Correction.ToString()]
Correction ID for a correction factor. (Columns in HyperX)
4201 @property 4202 def Equation(self) -> types.CorrectionEquation: 4203 ''' 4204 Equation for a correction factor. 4205 ''' 4206 return types.CorrectionEquation[self._Entity.Equation.ToString()]
Equation for a correction factor.
4208 @property 4209 def EquationParameter(self) -> types.EquationParameterId: 4210 ''' 4211 Correction factor parameter names. 4212 ''' 4213 return types.EquationParameterId[self._Entity.EquationParameter.ToString()]
Correction factor parameter names.
4224class OrthotropicEquationCorrectionFactor(OrthotropicCorrectionFactorBase): 4225 ''' 4226 Represents an equation-based orthotropic material correction factor. 4227 ''' 4228 def __init__(self, orthotropicEquationCorrectionFactor: _api.OrthotropicEquationCorrectionFactor): 4229 self._Entity = orthotropicEquationCorrectionFactor 4230 4231 @property 4232 def Equation(self) -> types.CorrectionEquation: 4233 ''' 4234 Equation for a correction factor. 4235 ''' 4236 return types.CorrectionEquation[self._Entity.Equation.ToString()] 4237 4238 @property 4239 def OrthotropicCorrectionValues(self) -> dict[types.EquationParameterId, OrthotropicCorrectionFactorValue]: 4240 orthotropicCorrectionValuesDict = {} 4241 for kvp in self._Entity.OrthotropicCorrectionValues: 4242 orthotropicCorrectionValuesDict[types.EquationParameterId[kvp.Key.ToString()]] = OrthotropicCorrectionFactorValue(kvp.Value) 4243 4244 return orthotropicCorrectionValuesDict 4245 4246 def AddCorrectionFactorValue(self, equationParameterName: types.EquationParameterId, valueToAdd: float) -> OrthotropicCorrectionFactorValue: 4247 return OrthotropicCorrectionFactorValue(self._Entity.AddCorrectionFactorValue(_types.EquationParameterId(equationParameterName.value), valueToAdd))
Represents an equation-based orthotropic material correction factor.
4231 @property 4232 def Equation(self) -> types.CorrectionEquation: 4233 ''' 4234 Equation for a correction factor. 4235 ''' 4236 return types.CorrectionEquation[self._Entity.Equation.ToString()]
Equation for a correction factor.
4238 @property 4239 def OrthotropicCorrectionValues(self) -> dict[types.EquationParameterId, OrthotropicCorrectionFactorValue]: 4240 orthotropicCorrectionValuesDict = {} 4241 for kvp in self._Entity.OrthotropicCorrectionValues: 4242 orthotropicCorrectionValuesDict[types.EquationParameterId[kvp.Key.ToString()]] = OrthotropicCorrectionFactorValue(kvp.Value) 4243 4244 return orthotropicCorrectionValuesDict
Inherited Members
4250class TabularCorrectionFactorIndependentValue: 4251 ''' 4252 Contains an independent value for a tabular correction factor row. 4253 ''' 4254 def __init__(self, tabularCorrectionFactorIndependentValue: _api.TabularCorrectionFactorIndependentValue): 4255 self._Entity = tabularCorrectionFactorIndependentValue 4256 4257 @property 4258 def BoolValue(self) -> bool: 4259 return self._Entity.BoolValue 4260 4261 @property 4262 def DoubleValue(self) -> float: 4263 return self._Entity.DoubleValue 4264 4265 @property 4266 def IntValue(self) -> int: 4267 return self._Entity.IntValue 4268 4269 @property 4270 def ValueType(self) -> types.CorrectionValueType: 4271 ''' 4272 Defines the type of the independent values on a tabular correction factor row. 4273 ''' 4274 return types.CorrectionValueType[self._Entity.ValueType.ToString()]
Contains an independent value for a tabular correction factor row.
4269 @property 4270 def ValueType(self) -> types.CorrectionValueType: 4271 ''' 4272 Defines the type of the independent values on a tabular correction factor row. 4273 ''' 4274 return types.CorrectionValueType[self._Entity.ValueType.ToString()]
Defines the type of the independent values on a tabular correction factor row.
4277class TabularCorrectionFactorRow: 4278 ''' 4279 Row data for a tabular correction factor. 4280 ''' 4281 def __init__(self, tabularCorrectionFactorRow: _api.TabularCorrectionFactorRow): 4282 self._Entity = tabularCorrectionFactorRow 4283 4284 @property 4285 def DependentValue(self) -> float: 4286 return self._Entity.DependentValue 4287 4288 @property 4289 def IndependentValues(self) -> dict[types.CorrectionIndependentDefinition, TabularCorrectionFactorIndependentValue]: 4290 independentValuesDict = {} 4291 for kvp in self._Entity.IndependentValues: 4292 independentValuesDict[types.CorrectionIndependentDefinition[kvp.Key.ToString()]] = TabularCorrectionFactorIndependentValue(kvp.Value) 4293 4294 return independentValuesDict
Row data for a tabular correction factor.
4288 @property 4289 def IndependentValues(self) -> dict[types.CorrectionIndependentDefinition, TabularCorrectionFactorIndependentValue]: 4290 independentValuesDict = {} 4291 for kvp in self._Entity.IndependentValues: 4292 independentValuesDict[types.CorrectionIndependentDefinition[kvp.Key.ToString()]] = TabularCorrectionFactorIndependentValue(kvp.Value) 4293 4294 return independentValuesDict
4297class OrthotropicTabularCorrectionFactor(OrthotropicCorrectionFactorBase): 4298 ''' 4299 Tabular correction factor. 4300 ''' 4301 def __init__(self, orthotropicTabularCorrectionFactor: _api.OrthotropicTabularCorrectionFactor): 4302 self._Entity = orthotropicTabularCorrectionFactor 4303 4304 @property 4305 def CorrectionFactorRows(self) -> dict[int, TabularCorrectionFactorRow]: 4306 correctionFactorRowsDict = {} 4307 for kvp in self._Entity.CorrectionFactorRows: 4308 correctionFactorRowsDict[int(kvp.Key)] = TabularCorrectionFactorRow(kvp.Value) 4309 4310 return correctionFactorRowsDict 4311 4312 @property 4313 def CorrectionIndependentDefinitions(self) -> set[types.CorrectionIndependentDefinition]: 4314 return {types.CorrectionIndependentDefinition(correctionIndependentDefinition) for correctionIndependentDefinition in self._Entity.CorrectionIndependentDefinitions} 4315 4316 @overload 4317 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: float) -> None: ... 4318 4319 @overload 4320 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: bool) -> None: ... 4321 4322 @overload 4323 def SetIndependentValue(self, correctionPointId: int, cid: types.CorrectionIndependentDefinition, value: int) -> None: ... 4324 4325 def SetKValue(self, correctionPointId: int, value: float) -> None: 4326 return self._Entity.SetKValue(correctionPointId, value) 4327 4328 def SetIndependentValue(self, item1 = None, item2 = None, item3 = None) -> None: 4329 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, float): 4330 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4331 4332 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, bool): 4333 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4334 4335 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, int): 4336 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4337 4338 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3)
Tabular correction factor.
4304 @property 4305 def CorrectionFactorRows(self) -> dict[int, TabularCorrectionFactorRow]: 4306 correctionFactorRowsDict = {} 4307 for kvp in self._Entity.CorrectionFactorRows: 4308 correctionFactorRowsDict[int(kvp.Key)] = TabularCorrectionFactorRow(kvp.Value) 4309 4310 return correctionFactorRowsDict
4328 def SetIndependentValue(self, item1 = None, item2 = None, item3 = None) -> None: 4329 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, float): 4330 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4331 4332 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, bool): 4333 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4334 4335 if isinstance(item1, int) and isinstance(item2, types.CorrectionIndependentDefinition) and isinstance(item3, int): 4336 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3) 4337 4338 return self._Entity.SetIndependentValue(item1, _types.CorrectionIndependentDefinition(item2.value), item3)
Inherited Members
4341class OrthotropicAllowableCurvePoint: 4342 ''' 4343 Represents a point on a laminate allowable curve. 4344 ''' 4345 def __init__(self, orthotropicAllowableCurvePoint: _api.OrthotropicAllowableCurvePoint): 4346 self._Entity = orthotropicAllowableCurvePoint 4347 4348 @property 4349 def Property_ID(self) -> types.AllowablePropertyName: 4350 ''' 4351 Property name for a laminate allowable. 4352 ''' 4353 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()] 4354 4355 @property 4356 def Temperature(self) -> float: 4357 return self._Entity.Temperature 4358 4359 @property 4360 def X(self) -> float: 4361 return self._Entity.X 4362 4363 @property 4364 def Y(self) -> float: 4365 return self._Entity.Y 4366 4367 @Property_ID.setter 4368 def Property_ID(self, value: types.AllowablePropertyName) -> None: 4369 self._Entity.Property_ID = _types.AllowablePropertyName(value.value) 4370 4371 @Temperature.setter 4372 def Temperature(self, value: float) -> None: 4373 self._Entity.Temperature = value 4374 4375 @X.setter 4376 def X(self, value: float) -> None: 4377 self._Entity.X = value 4378 4379 @Y.setter 4380 def Y(self, value: float) -> None: 4381 self._Entity.Y = value
Represents a point on a laminate allowable curve.
4348 @property 4349 def Property_ID(self) -> types.AllowablePropertyName: 4350 ''' 4351 Property name for a laminate allowable. 4352 ''' 4353 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()]
Property name for a laminate allowable.
4384class OrthotropicEffectiveLaminate: 4385 ''' 4386 Orthotropic material effective laminate properties. Read-only from the API. 4387 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4388 ''' 4389 def __init__(self, orthotropicEffectiveLaminate: _api.OrthotropicEffectiveLaminate): 4390 self._Entity = orthotropicEffectiveLaminate 4391 4392 @property 4393 def Percent_tape_0(self) -> float: 4394 return self._Entity.Percent_tape_0 4395 4396 @property 4397 def Percent_tape_90(self) -> float: 4398 return self._Entity.Percent_tape_90 4399 4400 @property 4401 def Percent_tape_45(self) -> float: 4402 return self._Entity.Percent_tape_45 4403 4404 @property 4405 def Percent_fabric_0(self) -> float: 4406 return self._Entity.Percent_fabric_0 4407 4408 @property 4409 def Percent_fabric_90(self) -> float: 4410 return self._Entity.Percent_fabric_90 4411 4412 @property 4413 def Percent_fabric_45(self) -> float: 4414 return self._Entity.Percent_fabric_45 4415 4416 @property 4417 def Tape_Orthotropic(self) -> str: 4418 return self._Entity.Tape_Orthotropic 4419 4420 @property 4421 def Fabric_Orthotropic(self) -> str: 4422 return self._Entity.Fabric_Orthotropic 4423 4424 @property 4425 def Valid(self) -> bool: 4426 return self._Entity.Valid 4427 4428 @property 4429 def Use_tape_allowables(self) -> bool: 4430 return self._Entity.Use_tape_allowables
Orthotropic material effective laminate properties. Read-only from the API. Check if material is an effective laminate with orthotropic.IsEffectiveLaminate.
4433class OrthotropicLaminateAllowable: 4434 ''' 4435 Orthotropic material laminate allowable properties. 4436 ''' 4437 def __init__(self, orthotropicLaminateAllowable: _api.OrthotropicLaminateAllowable): 4438 self._Entity = orthotropicLaminateAllowable 4439 4440 @property 4441 def Property_ID(self) -> types.AllowablePropertyName: 4442 ''' 4443 Property name for a laminate allowable. 4444 ''' 4445 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()] 4446 4447 @property 4448 def Method_ID(self) -> types.AllowableMethodName: 4449 ''' 4450 Method name for a laminate allowable. 4451 ''' 4452 return types.AllowableMethodName[self._Entity.Method_ID.ToString()] 4453 4454 @Property_ID.setter 4455 def Property_ID(self, value: types.AllowablePropertyName) -> None: 4456 self._Entity.Property_ID = _types.AllowablePropertyName(value.value) 4457 4458 @Method_ID.setter 4459 def Method_ID(self, value: types.AllowableMethodName) -> None: 4460 self._Entity.Method_ID = _types.AllowableMethodName(value.value)
Orthotropic material laminate allowable properties.
4440 @property 4441 def Property_ID(self) -> types.AllowablePropertyName: 4442 ''' 4443 Property name for a laminate allowable. 4444 ''' 4445 return types.AllowablePropertyName[self._Entity.Property_ID.ToString()]
Property name for a laminate allowable.
4463class OrthotropicTemperature: 4464 ''' 4465 Orthotropic material temperature dependent properties. 4466 ''' 4467 def __init__(self, orthotropicTemperature: _api.OrthotropicTemperature): 4468 self._Entity = orthotropicTemperature 4469 4470 @property 4471 def Temperature(self) -> float: 4472 return self._Entity.Temperature 4473 4474 @property 4475 def Et1(self) -> float: 4476 return self._Entity.Et1 4477 4478 @property 4479 def Et2(self) -> float: 4480 return self._Entity.Et2 4481 4482 @property 4483 def vt12(self) -> float: 4484 return self._Entity.vt12 4485 4486 @property 4487 def Ec1(self) -> float: 4488 return self._Entity.Ec1 4489 4490 @property 4491 def Ec2(self) -> float: 4492 return self._Entity.Ec2 4493 4494 @property 4495 def vc12(self) -> float: 4496 return self._Entity.vc12 4497 4498 @property 4499 def G12(self) -> float: 4500 return self._Entity.G12 4501 4502 @property 4503 def G13(self) -> float: 4504 return self._Entity.G13 4505 4506 @property 4507 def G23(self) -> float: 4508 return self._Entity.G23 4509 4510 @property 4511 def Ftu1(self) -> float: 4512 return self._Entity.Ftu1 4513 4514 @property 4515 def Ftu2(self) -> float: 4516 return self._Entity.Ftu2 4517 4518 @property 4519 def Fcu1(self) -> float: 4520 return self._Entity.Fcu1 4521 4522 @property 4523 def Fcu2(self) -> float: 4524 return self._Entity.Fcu2 4525 4526 @property 4527 def Fsu12(self) -> float: 4528 return self._Entity.Fsu12 4529 4530 @property 4531 def Fsu13(self) -> float: 4532 return self._Entity.Fsu13 4533 4534 @property 4535 def Fsu23(self) -> float: 4536 return self._Entity.Fsu23 4537 4538 @property 4539 def GIc(self) -> float: 4540 return self._Entity.GIc 4541 4542 @property 4543 def alpha1(self) -> float: 4544 return self._Entity.alpha1 4545 4546 @property 4547 def alpha2(self) -> float: 4548 return self._Entity.alpha2 4549 4550 @property 4551 def K1(self) -> float: 4552 return self._Entity.K1 4553 4554 @property 4555 def K2(self) -> float: 4556 return self._Entity.K2 4557 4558 @property 4559 def C(self) -> float: 4560 return self._Entity.C 4561 4562 @property 4563 def etu1(self) -> float: 4564 return self._Entity.etu1 4565 4566 @property 4567 def etu2(self) -> float: 4568 return self._Entity.etu2 4569 4570 @property 4571 def ecu1(self) -> float: 4572 return self._Entity.ecu1 4573 4574 @property 4575 def ecu2(self) -> float: 4576 return self._Entity.ecu2 4577 4578 @property 4579 def ecuoh(self) -> float: 4580 return self._Entity.ecuoh 4581 4582 @property 4583 def ecuai(self) -> float: 4584 return self._Entity.ecuai 4585 4586 @property 4587 def esu12(self) -> float: 4588 return self._Entity.esu12 4589 4590 @property 4591 def Ftu3(self) -> float: 4592 return self._Entity.Ftu3 4593 4594 @property 4595 def GIIc(self) -> float: 4596 return self._Entity.GIIc 4597 4598 @property 4599 def d0Tension(self) -> float: 4600 return self._Entity.d0Tension 4601 4602 @property 4603 def cd(self) -> float: 4604 return self._Entity.cd 4605 4606 @property 4607 def d0Compression(self) -> float: 4608 return self._Entity.d0Compression 4609 4610 @property 4611 def TLt(self) -> float: 4612 return self._Entity.TLt 4613 4614 @property 4615 def TLc(self) -> float: 4616 return self._Entity.TLc 4617 4618 @property 4619 def TTt(self) -> float: 4620 return self._Entity.TTt 4621 4622 @property 4623 def TTc(self) -> float: 4624 return self._Entity.TTc 4625 4626 @property 4627 def OrthotropicAllowableCurvePoints(self) -> list[OrthotropicAllowableCurvePoint]: 4628 return [OrthotropicAllowableCurvePoint(orthotropicAllowableCurvePoint) for orthotropicAllowableCurvePoint in self._Entity.OrthotropicAllowableCurvePoints] 4629 4630 @Temperature.setter 4631 def Temperature(self, value: float) -> None: 4632 self._Entity.Temperature = value 4633 4634 @Et1.setter 4635 def Et1(self, value: float) -> None: 4636 self._Entity.Et1 = value 4637 4638 @Et2.setter 4639 def Et2(self, value: float) -> None: 4640 self._Entity.Et2 = value 4641 4642 @vt12.setter 4643 def vt12(self, value: float) -> None: 4644 self._Entity.vt12 = value 4645 4646 @Ec1.setter 4647 def Ec1(self, value: float) -> None: 4648 self._Entity.Ec1 = value 4649 4650 @Ec2.setter 4651 def Ec2(self, value: float) -> None: 4652 self._Entity.Ec2 = value 4653 4654 @vc12.setter 4655 def vc12(self, value: float) -> None: 4656 self._Entity.vc12 = value 4657 4658 @G12.setter 4659 def G12(self, value: float) -> None: 4660 self._Entity.G12 = value 4661 4662 @G13.setter 4663 def G13(self, value: float) -> None: 4664 self._Entity.G13 = value 4665 4666 @G23.setter 4667 def G23(self, value: float) -> None: 4668 self._Entity.G23 = value 4669 4670 @Ftu1.setter 4671 def Ftu1(self, value: float) -> None: 4672 self._Entity.Ftu1 = value 4673 4674 @Ftu2.setter 4675 def Ftu2(self, value: float) -> None: 4676 self._Entity.Ftu2 = value 4677 4678 @Fcu1.setter 4679 def Fcu1(self, value: float) -> None: 4680 self._Entity.Fcu1 = value 4681 4682 @Fcu2.setter 4683 def Fcu2(self, value: float) -> None: 4684 self._Entity.Fcu2 = value 4685 4686 @Fsu12.setter 4687 def Fsu12(self, value: float) -> None: 4688 self._Entity.Fsu12 = value 4689 4690 @Fsu13.setter 4691 def Fsu13(self, value: float) -> None: 4692 self._Entity.Fsu13 = value 4693 4694 @Fsu23.setter 4695 def Fsu23(self, value: float) -> None: 4696 self._Entity.Fsu23 = value 4697 4698 @GIc.setter 4699 def GIc(self, value: float) -> None: 4700 self._Entity.GIc = value 4701 4702 @alpha1.setter 4703 def alpha1(self, value: float) -> None: 4704 self._Entity.alpha1 = value 4705 4706 @alpha2.setter 4707 def alpha2(self, value: float) -> None: 4708 self._Entity.alpha2 = value 4709 4710 @K1.setter 4711 def K1(self, value: float) -> None: 4712 self._Entity.K1 = value 4713 4714 @K2.setter 4715 def K2(self, value: float) -> None: 4716 self._Entity.K2 = value 4717 4718 @C.setter 4719 def C(self, value: float) -> None: 4720 self._Entity.C = value 4721 4722 @etu1.setter 4723 def etu1(self, value: float) -> None: 4724 self._Entity.etu1 = value 4725 4726 @etu2.setter 4727 def etu2(self, value: float) -> None: 4728 self._Entity.etu2 = value 4729 4730 @ecu1.setter 4731 def ecu1(self, value: float) -> None: 4732 self._Entity.ecu1 = value 4733 4734 @ecu2.setter 4735 def ecu2(self, value: float) -> None: 4736 self._Entity.ecu2 = value 4737 4738 @ecuoh.setter 4739 def ecuoh(self, value: float) -> None: 4740 self._Entity.ecuoh = value 4741 4742 @ecuai.setter 4743 def ecuai(self, value: float) -> None: 4744 self._Entity.ecuai = value 4745 4746 @esu12.setter 4747 def esu12(self, value: float) -> None: 4748 self._Entity.esu12 = value 4749 4750 @Ftu3.setter 4751 def Ftu3(self, value: float) -> None: 4752 self._Entity.Ftu3 = value 4753 4754 @GIIc.setter 4755 def GIIc(self, value: float) -> None: 4756 self._Entity.GIIc = value 4757 4758 @d0Tension.setter 4759 def d0Tension(self, value: float) -> None: 4760 self._Entity.d0Tension = value 4761 4762 @cd.setter 4763 def cd(self, value: float) -> None: 4764 self._Entity.cd = value 4765 4766 @d0Compression.setter 4767 def d0Compression(self, value: float) -> None: 4768 self._Entity.d0Compression = value 4769 4770 @TLt.setter 4771 def TLt(self, value: float) -> None: 4772 self._Entity.TLt = value 4773 4774 @TLc.setter 4775 def TLc(self, value: float) -> None: 4776 self._Entity.TLc = value 4777 4778 @TTt.setter 4779 def TTt(self, value: float) -> None: 4780 self._Entity.TTt = value 4781 4782 @TTc.setter 4783 def TTc(self, value: float) -> None: 4784 self._Entity.TTc = value 4785 4786 def AddCurvePoint(self, property: types.AllowablePropertyName, x: float, y: float) -> OrthotropicAllowableCurvePoint: 4787 return OrthotropicAllowableCurvePoint(self._Entity.AddCurvePoint(_types.AllowablePropertyName(property.value), x, y)) 4788 4789 def DeleteCurvePoint(self, property: types.AllowablePropertyName, x: float) -> bool: 4790 return self._Entity.DeleteCurvePoint(_types.AllowablePropertyName(property.value), x) 4791 4792 def GetCurvePoint(self, property: types.AllowablePropertyName, x: float) -> OrthotropicAllowableCurvePoint: 4793 return OrthotropicAllowableCurvePoint(self._Entity.GetCurvePoint(_types.AllowablePropertyName(property.value), x))
Orthotropic material temperature dependent properties.
4796class Orthotropic: 4797 ''' 4798 Orthotropic material. 4799 ''' 4800 def __init__(self, orthotropic: _api.Orthotropic): 4801 self._Entity = orthotropic 4802 4803 @property 4804 def MaterialFamilyName(self) -> str: 4805 return self._Entity.MaterialFamilyName 4806 4807 @property 4808 def Id(self) -> int: 4809 return self._Entity.Id 4810 4811 @property 4812 def CreationDate(self) -> DateTime: 4813 return self._Entity.CreationDate 4814 4815 @property 4816 def ModificationDate(self) -> DateTime: 4817 return self._Entity.ModificationDate 4818 4819 @property 4820 def Name(self) -> str: 4821 return self._Entity.Name 4822 4823 @property 4824 def Form(self) -> str: 4825 return self._Entity.Form 4826 4827 @property 4828 def Specification(self) -> str: 4829 return self._Entity.Specification 4830 4831 @property 4832 def Basis(self) -> str: 4833 return self._Entity.Basis 4834 4835 @property 4836 def Wet(self) -> bool: 4837 return self._Entity.Wet 4838 4839 @property 4840 def Thickness(self) -> float: 4841 return self._Entity.Thickness 4842 4843 @property 4844 def Density(self) -> float: 4845 return self._Entity.Density 4846 4847 @property 4848 def FiberVolume(self) -> float: 4849 return self._Entity.FiberVolume 4850 4851 @property 4852 def GlassTransition(self) -> float: 4853 return self._Entity.GlassTransition 4854 4855 @property 4856 def Manufacturer(self) -> str: 4857 return self._Entity.Manufacturer 4858 4859 @property 4860 def Processes(self) -> str: 4861 return self._Entity.Processes 4862 4863 @property 4864 def MaterialDescription(self) -> str: 4865 return self._Entity.MaterialDescription 4866 4867 @property 4868 def UserNote(self) -> str: 4869 return self._Entity.UserNote 4870 4871 @property 4872 def BendingCorrectionFactor(self) -> float: 4873 return self._Entity.BendingCorrectionFactor 4874 4875 @property 4876 def FemMaterialId(self) -> int: 4877 return self._Entity.FemMaterialId 4878 4879 @property 4880 def Cost(self) -> float: 4881 return self._Entity.Cost 4882 4883 @property 4884 def BucklingStiffnessKnockdown(self) -> float: 4885 return self._Entity.BucklingStiffnessKnockdown 4886 4887 @property 4888 def OrthotropicTemperatureProperties(self) -> list[OrthotropicTemperature]: 4889 return [OrthotropicTemperature(orthotropicTemperature) for orthotropicTemperature in self._Entity.OrthotropicTemperatureProperties] 4890 4891 @property 4892 def OrthotropicLaminateAllowables(self) -> list[OrthotropicLaminateAllowable]: 4893 return [OrthotropicLaminateAllowable(orthotropicLaminateAllowable) for orthotropicLaminateAllowable in self._Entity.OrthotropicLaminateAllowables] 4894 4895 @property 4896 def OrthotropicEffectiveLaminate(self) -> OrthotropicEffectiveLaminate: 4897 ''' 4898 Orthotropic material effective laminate properties. Read-only from the API. 4899 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4900 ''' 4901 result = self._Entity.OrthotropicEffectiveLaminate 4902 return OrthotropicEffectiveLaminate(result) if result is not None else None 4903 4904 @property 4905 def OrthotropicEquationCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicEquationCorrectionFactor]: 4906 orthotropicEquationCorrectionFactorsDict = {} 4907 for kvp in self._Entity.OrthotropicEquationCorrectionFactors: 4908 orthotropicEquationCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicEquationCorrectionFactor(kvp.Value) 4909 4910 return orthotropicEquationCorrectionFactorsDict 4911 4912 @property 4913 def OrthotropicTabularCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicTabularCorrectionFactor]: 4914 orthotropicTabularCorrectionFactorsDict = {} 4915 for kvp in self._Entity.OrthotropicTabularCorrectionFactors: 4916 orthotropicTabularCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicTabularCorrectionFactor(kvp.Value) 4917 4918 return orthotropicTabularCorrectionFactorsDict 4919 4920 @MaterialFamilyName.setter 4921 def MaterialFamilyName(self, value: str) -> None: 4922 self._Entity.MaterialFamilyName = value 4923 4924 @Name.setter 4925 def Name(self, value: str) -> None: 4926 self._Entity.Name = value 4927 4928 @Form.setter 4929 def Form(self, value: str) -> None: 4930 self._Entity.Form = value 4931 4932 @Specification.setter 4933 def Specification(self, value: str) -> None: 4934 self._Entity.Specification = value 4935 4936 @Basis.setter 4937 def Basis(self, value: str) -> None: 4938 self._Entity.Basis = value 4939 4940 @Wet.setter 4941 def Wet(self, value: bool) -> None: 4942 self._Entity.Wet = value 4943 4944 @Thickness.setter 4945 def Thickness(self, value: float) -> None: 4946 self._Entity.Thickness = value 4947 4948 @Density.setter 4949 def Density(self, value: float) -> None: 4950 self._Entity.Density = value 4951 4952 @FiberVolume.setter 4953 def FiberVolume(self, value: float) -> None: 4954 self._Entity.FiberVolume = value 4955 4956 @GlassTransition.setter 4957 def GlassTransition(self, value: float) -> None: 4958 self._Entity.GlassTransition = value 4959 4960 @Manufacturer.setter 4961 def Manufacturer(self, value: str) -> None: 4962 self._Entity.Manufacturer = value 4963 4964 @Processes.setter 4965 def Processes(self, value: str) -> None: 4966 self._Entity.Processes = value 4967 4968 @MaterialDescription.setter 4969 def MaterialDescription(self, value: str) -> None: 4970 self._Entity.MaterialDescription = value 4971 4972 @UserNote.setter 4973 def UserNote(self, value: str) -> None: 4974 self._Entity.UserNote = value 4975 4976 @BendingCorrectionFactor.setter 4977 def BendingCorrectionFactor(self, value: float) -> None: 4978 self._Entity.BendingCorrectionFactor = value 4979 4980 @FemMaterialId.setter 4981 def FemMaterialId(self, value: int) -> None: 4982 self._Entity.FemMaterialId = value 4983 4984 @Cost.setter 4985 def Cost(self, value: float) -> None: 4986 self._Entity.Cost = value 4987 4988 @BucklingStiffnessKnockdown.setter 4989 def BucklingStiffnessKnockdown(self, value: float) -> None: 4990 self._Entity.BucklingStiffnessKnockdown = value 4991 4992 def AddTemperatureProperty(self, temperature: float, et1: float, et2: float, vt12: float, ec1: float, ec2: float, vc12: float, g12: float, ftu1: float, ftu2: float, fcu1: float, fcu2: float, fsu12: float, alpha1: float, alpha2: float, etu1: float, etu2: float, ecu1: float, ecu2: float, esu12: float) -> OrthotropicTemperature: 4993 return OrthotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et1, et2, vt12, ec1, ec2, vc12, g12, ftu1, ftu2, fcu1, fcu2, fsu12, alpha1, alpha2, etu1, etu2, ecu1, ecu2, esu12)) 4994 4995 def DeleteTemperatureProperty(self, temperature: float) -> bool: 4996 return self._Entity.DeleteTemperatureProperty(temperature) 4997 4998 def GetTemperature(self, lookupTemperature: float) -> OrthotropicTemperature: 4999 return OrthotropicTemperature(self._Entity.GetTemperature(lookupTemperature)) 5000 5001 def IsEffectiveLaminate(self) -> bool: 5002 ''' 5003 Returns true if this material is an effective laminate. 5004 ''' 5005 return self._Entity.IsEffectiveLaminate() 5006 5007 def HasLaminateAllowable(self, property: types.AllowablePropertyName) -> bool: 5008 return self._Entity.HasLaminateAllowable(_types.AllowablePropertyName(property.value)) 5009 5010 def AddLaminateAllowable(self, property: types.AllowablePropertyName, method: types.AllowableMethodName) -> OrthotropicLaminateAllowable: 5011 return OrthotropicLaminateAllowable(self._Entity.AddLaminateAllowable(_types.AllowablePropertyName(property.value), _types.AllowableMethodName(method.value))) 5012 5013 def GetLaminateAllowable(self, lookupAllowableProperty: types.AllowablePropertyName) -> OrthotropicLaminateAllowable: 5014 return OrthotropicLaminateAllowable(self._Entity.GetLaminateAllowable(_types.AllowablePropertyName(lookupAllowableProperty.value))) 5015 5016 def AddEquationCorrectionFactor(self, propertyId: types.CorrectionProperty, correctionId: types.CorrectionId, equationId: types.CorrectionEquation) -> OrthotropicEquationCorrectionFactor: 5017 return OrthotropicEquationCorrectionFactor(self._Entity.AddEquationCorrectionFactor(_types.CorrectionProperty(propertyId.value), _types.CorrectionId(correctionId.value), _types.CorrectionEquation(equationId.value))) 5018 5019 def GetEquationCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicEquationCorrectionFactor: 5020 return OrthotropicEquationCorrectionFactor(self._Entity.GetEquationCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value))) 5021 5022 def GetTabularCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicTabularCorrectionFactor: 5023 return OrthotropicTabularCorrectionFactor(self._Entity.GetTabularCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value))) 5024 5025 def Save(self) -> None: 5026 ''' 5027 Save any changes to this orthotropic material to the database. 5028 ''' 5029 return self._Entity.Save()
Orthotropic material.
4895 @property 4896 def OrthotropicEffectiveLaminate(self) -> OrthotropicEffectiveLaminate: 4897 ''' 4898 Orthotropic material effective laminate properties. Read-only from the API. 4899 Check if material is an effective laminate with orthotropic.IsEffectiveLaminate. 4900 ''' 4901 result = self._Entity.OrthotropicEffectiveLaminate 4902 return OrthotropicEffectiveLaminate(result) if result is not None else None
Orthotropic material effective laminate properties. Read-only from the API. Check if material is an effective laminate with orthotropic.IsEffectiveLaminate.
4904 @property 4905 def OrthotropicEquationCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicEquationCorrectionFactor]: 4906 orthotropicEquationCorrectionFactorsDict = {} 4907 for kvp in self._Entity.OrthotropicEquationCorrectionFactors: 4908 orthotropicEquationCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicEquationCorrectionFactor(kvp.Value) 4909 4910 return orthotropicEquationCorrectionFactorsDict
4912 @property 4913 def OrthotropicTabularCorrectionFactors(self) -> dict[OrthotropicCorrectionFactorPoint, OrthotropicTabularCorrectionFactor]: 4914 orthotropicTabularCorrectionFactorsDict = {} 4915 for kvp in self._Entity.OrthotropicTabularCorrectionFactors: 4916 orthotropicTabularCorrectionFactorsDict[OrthotropicCorrectionFactorPoint(kvp.Key)] = OrthotropicTabularCorrectionFactor(kvp.Value) 4917 4918 return orthotropicTabularCorrectionFactorsDict
4992 def AddTemperatureProperty(self, temperature: float, et1: float, et2: float, vt12: float, ec1: float, ec2: float, vc12: float, g12: float, ftu1: float, ftu2: float, fcu1: float, fcu2: float, fsu12: float, alpha1: float, alpha2: float, etu1: float, etu2: float, ecu1: float, ecu2: float, esu12: float) -> OrthotropicTemperature: 4993 return OrthotropicTemperature(self._Entity.AddTemperatureProperty(temperature, et1, et2, vt12, ec1, ec2, vc12, g12, ftu1, ftu2, fcu1, fcu2, fsu12, alpha1, alpha2, etu1, etu2, ecu1, ecu2, esu12))
5001 def IsEffectiveLaminate(self) -> bool: 5002 ''' 5003 Returns true if this material is an effective laminate. 5004 ''' 5005 return self._Entity.IsEffectiveLaminate()
Returns true if this material is an effective laminate.
5010 def AddLaminateAllowable(self, property: types.AllowablePropertyName, method: types.AllowableMethodName) -> OrthotropicLaminateAllowable: 5011 return OrthotropicLaminateAllowable(self._Entity.AddLaminateAllowable(_types.AllowablePropertyName(property.value), _types.AllowableMethodName(method.value)))
5016 def AddEquationCorrectionFactor(self, propertyId: types.CorrectionProperty, correctionId: types.CorrectionId, equationId: types.CorrectionEquation) -> OrthotropicEquationCorrectionFactor: 5017 return OrthotropicEquationCorrectionFactor(self._Entity.AddEquationCorrectionFactor(_types.CorrectionProperty(propertyId.value), _types.CorrectionId(correctionId.value), _types.CorrectionEquation(equationId.value)))
5019 def GetEquationCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicEquationCorrectionFactor: 5020 return OrthotropicEquationCorrectionFactor(self._Entity.GetEquationCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value)))
5022 def GetTabularCorrectionFactor(self, property: types.CorrectionProperty, correction: types.CorrectionId) -> OrthotropicTabularCorrectionFactor: 5023 return OrthotropicTabularCorrectionFactor(self._Entity.GetTabularCorrectionFactor(_types.CorrectionProperty(property.value), _types.CorrectionId(correction.value)))
5032class Vector2d: 5033 ''' 5034 Represents a readonly 2D vector. 5035 ''' 5036 def __init__(self, vector2d: _api.Vector2d): 5037 self._Entity = vector2d 5038 5039 def Create_Vector2d(x: float, y: float): 5040 return Vector2d(_api.Vector2d(x, y)) 5041 5042 @property 5043 def X(self) -> float: 5044 return self._Entity.X 5045 5046 @property 5047 def Y(self) -> float: 5048 return self._Entity.Y 5049 5050 @overload 5051 def Equals(self, other) -> bool: ... 5052 5053 @overload 5054 def Equals(self, obj) -> bool: ... 5055 5056 def GetHashCode(self) -> int: 5057 return self._Entity.GetHashCode() 5058 5059 def Equals(self, item1 = None) -> bool: 5060 if isinstance(item1, Vector2d): 5061 return self._Entity.Equals(item1._Entity) 5062 5063 return self._Entity.Equals(item1._Entity) 5064 5065 def __eq__(self, other): 5066 return self.Equals(other) 5067 5068 def __ne__(self, other): 5069 return not self.Equals(other)
Represents a readonly 2D vector.
5072class ElementSet(IdNameEntity): 5073 ''' 5074 A set of elements defined in the input file. 5075 ''' 5076 def __init__(self, elementSet: _api.ElementSet): 5077 self._Entity = elementSet 5078 5079 @property 5080 def Elements(self) -> ElementCol: 5081 result = self._Entity.Elements 5082 return ElementCol(result) if result is not None else None
A set of elements defined in the input file.
Inherited Members
5085class FemProperty(IdNameEntity): 5086 ''' 5087 A property description. 5088 ''' 5089 def __init__(self, femProperty: _api.FemProperty): 5090 self._Entity = femProperty 5091 5092 @property 5093 def Elements(self) -> ElementCol: 5094 result = self._Entity.Elements 5095 return ElementCol(result) if result is not None else None 5096 5097 @property 5098 def FemType(self) -> types.FemType: 5099 return types.FemType[self._Entity.FemType.ToString()]
A property description.
Inherited Members
5102class ElementSetCol(IdEntityCol[ElementSet]): 5103 def __init__(self, elementSetCol: _api.ElementSetCol): 5104 self._Entity = elementSetCol 5105 self._CollectedClass = ElementSet 5106 5107 @property 5108 def ElementSetColList(self) -> tuple[ElementSet]: 5109 return tuple([ElementSet(elementSetCol) for elementSetCol in self._Entity]) 5110 5111 def __getitem__(self, index: int): 5112 return self.ElementSetColList[index] 5113 5114 def __iter__(self): 5115 yield from self.ElementSetColList 5116 5117 def __len__(self): 5118 return len(self.ElementSetColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
5121class FemPropertyCol(IdEntityCol[FemProperty]): 5122 def __init__(self, femPropertyCol: _api.FemPropertyCol): 5123 self._Entity = femPropertyCol 5124 self._CollectedClass = FemProperty 5125 5126 @property 5127 def FemPropertyColList(self) -> tuple[FemProperty]: 5128 return tuple([FemProperty(femPropertyCol) for femPropertyCol in self._Entity]) 5129 5130 def __getitem__(self, index: int): 5131 return self.FemPropertyColList[index] 5132 5133 def __iter__(self): 5134 yield from self.FemPropertyColList 5135 5136 def __len__(self): 5137 return len(self.FemPropertyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
5140class FemDataSet: 5141 def __init__(self, femDataSet: _api.FemDataSet): 5142 self._Entity = femDataSet 5143 5144 @property 5145 def FemProperties(self) -> FemPropertyCol: 5146 result = self._Entity.FemProperties 5147 return FemPropertyCol(result) if result is not None else None 5148 5149 @property 5150 def ElementSets(self) -> ElementSetCol: 5151 result = self._Entity.ElementSets 5152 return ElementSetCol(result) if result is not None else None
5155class PluginPackage(IdNameEntity): 5156 def __init__(self, pluginPackage: _api.PluginPackage): 5157 self._Entity = pluginPackage 5158 5159 @property 5160 def FilePath(self) -> str: 5161 return self._Entity.FilePath 5162 5163 @property 5164 def Version(self) -> str: 5165 return self._Entity.Version 5166 5167 @property 5168 def Description(self) -> str: 5169 return self._Entity.Description 5170 5171 @property 5172 def ModificationDate(self) -> DateTime: 5173 return self._Entity.ModificationDate
Represents an entity with an ID and Name.
Inherited Members
5176class Ply(IdNameEntity): 5177 def __init__(self, ply: _api.Ply): 5178 self._Entity = ply 5179 5180 @property 5181 def InnerCurves(self) -> list[int]: 5182 return [int32 for int32 in self._Entity.InnerCurves] 5183 5184 @property 5185 def OuterCurves(self) -> list[int]: 5186 return [int32 for int32 in self._Entity.OuterCurves] 5187 5188 @property 5189 def FiberDirectionCurves(self) -> list[int]: 5190 return [int32 for int32 in self._Entity.FiberDirectionCurves] 5191 5192 @property 5193 def Area(self) -> float: 5194 return self._Entity.Area 5195 5196 @property 5197 def Description(self) -> str: 5198 return self._Entity.Description 5199 5200 @property 5201 def Elements(self) -> ElementCol: 5202 result = self._Entity.Elements 5203 return ElementCol(result) if result is not None else None 5204 5205 @property 5206 def MaterialId(self) -> int: 5207 return self._Entity.MaterialId 5208 5209 @property 5210 def Orientation(self) -> int: 5211 return self._Entity.Orientation 5212 5213 @property 5214 def Sequence(self) -> int: 5215 return self._Entity.Sequence 5216 5217 @property 5218 def StructureId(self) -> int: 5219 return self._Entity.StructureId 5220 5221 @property 5222 def Thickness(self) -> float: 5223 return self._Entity.Thickness
Represents an entity with an ID and Name.
Inherited Members
5226class Rundeck(IdEntity): 5227 def __init__(self, rundeck: _api.Rundeck): 5228 self._Entity = rundeck 5229 5230 @property 5231 def InputFilePath(self) -> str: 5232 return self._Entity.InputFilePath 5233 5234 @property 5235 def IsPrimary(self) -> bool: 5236 return self._Entity.IsPrimary 5237 5238 @property 5239 def ResultFilePath(self) -> str: 5240 return self._Entity.ResultFilePath 5241 5242 def SetInputFilePath(self, filepath: str) -> RundeckUpdateStatus: 5243 return RundeckUpdateStatus[self._Entity.SetInputFilePath(filepath).ToString()] 5244 5245 def SetResultFilePath(self, filepath: str) -> RundeckUpdateStatus: 5246 return RundeckUpdateStatus[self._Entity.SetResultFilePath(filepath).ToString()]
Represents an entity with an ID.
5249class RundeckPathPair: 5250 def __init__(self, rundeckPathPair: _api.RundeckPathPair): 5251 self._Entity = rundeckPathPair 5252 5253 @property 5254 def InputFilePath(self) -> str: 5255 return self._Entity.InputFilePath 5256 5257 @property 5258 def ResultFilePath(self) -> str: 5259 return self._Entity.ResultFilePath 5260 5261 @InputFilePath.setter 5262 def InputFilePath(self, value: str) -> None: 5263 self._Entity.InputFilePath = value 5264 5265 @ResultFilePath.setter 5266 def ResultFilePath(self, value: str) -> None: 5267 self._Entity.ResultFilePath = value
5270class BeamLoads: 5271 def __init__(self, beamLoads: _api.BeamLoads): 5272 self._Entity = beamLoads 5273 5274 @property 5275 def AxialForce(self) -> float: 5276 return self._Entity.AxialForce 5277 5278 @property 5279 def MomentX(self) -> float: 5280 return self._Entity.MomentX 5281 5282 @property 5283 def MomentY(self) -> float: 5284 return self._Entity.MomentY 5285 5286 @property 5287 def ShearX(self) -> float: 5288 return self._Entity.ShearX 5289 5290 @property 5291 def ShearY(self) -> float: 5292 return self._Entity.ShearY 5293 5294 @property 5295 def Torque(self) -> float: 5296 return self._Entity.Torque
5299class SectionCut(IdNameEntity): 5300 def __init__(self, sectionCut: _api.SectionCut): 5301 self._Entity = sectionCut 5302 5303 @property 5304 def ReferencePoint(self) -> types.SectionCutPropertyLocation: 5305 ''' 5306 Centroid vs Origin 5307 ''' 5308 return types.SectionCutPropertyLocation[self._Entity.ReferencePoint.ToString()] 5309 5310 @property 5311 def HorizontalVector(self) -> Vector3d: 5312 ''' 5313 Represents a readonly 3D vector. 5314 ''' 5315 result = self._Entity.HorizontalVector 5316 return Vector3d(result) if result is not None else None 5317 5318 @property 5319 def NormalVector(self) -> Vector3d: 5320 ''' 5321 Represents a readonly 3D vector. 5322 ''' 5323 result = self._Entity.NormalVector 5324 return Vector3d(result) if result is not None else None 5325 5326 @property 5327 def OriginVector(self) -> Vector3d: 5328 ''' 5329 Represents a readonly 3D vector. 5330 ''' 5331 result = self._Entity.OriginVector 5332 return Vector3d(result) if result is not None else None 5333 5334 @property 5335 def VerticalVector(self) -> Vector3d: 5336 ''' 5337 Represents a readonly 3D vector. 5338 ''' 5339 result = self._Entity.VerticalVector 5340 return Vector3d(result) if result is not None else None 5341 5342 @property 5343 def MaxAngleBound(self) -> float: 5344 return self._Entity.MaxAngleBound 5345 5346 @property 5347 def MinAngleBound(self) -> float: 5348 return self._Entity.MinAngleBound 5349 5350 @property 5351 def MinStiffnessEihh(self) -> float: 5352 return self._Entity.MinStiffnessEihh 5353 5354 @property 5355 def MinStiffnessEivv(self) -> float: 5356 return self._Entity.MinStiffnessEivv 5357 5358 @property 5359 def MinStiffnessGJ(self) -> float: 5360 return self._Entity.MinStiffnessGJ 5361 5362 @property 5363 def ZoneStiffnessDistribution(self) -> float: 5364 return self._Entity.ZoneStiffnessDistribution 5365 5366 @property 5367 def CN_hmax(self) -> float: 5368 return self._Entity.CN_hmax 5369 5370 @property 5371 def CN_hmin(self) -> float: 5372 return self._Entity.CN_hmin 5373 5374 @property 5375 def CN_vmax(self) -> float: 5376 return self._Entity.CN_vmax 5377 5378 @property 5379 def CN_vmin(self) -> float: 5380 return self._Entity.CN_vmin 5381 5382 @property 5383 def CQ_hmax(self) -> float: 5384 return self._Entity.CQ_hmax 5385 5386 @property 5387 def CQ_hmin(self) -> float: 5388 return self._Entity.CQ_hmin 5389 5390 @property 5391 def CQ_vmax(self) -> float: 5392 return self._Entity.CQ_vmax 5393 5394 @property 5395 def CQ_vmin(self) -> float: 5396 return self._Entity.CQ_vmin 5397 5398 @property 5399 def CG(self) -> Vector2d: 5400 ''' 5401 Represents a readonly 2D vector. 5402 ''' 5403 result = self._Entity.CG 5404 return Vector2d(result) if result is not None else None 5405 5406 @property 5407 def CN(self) -> Vector2d: 5408 ''' 5409 Represents a readonly 2D vector. 5410 ''' 5411 result = self._Entity.CN 5412 return Vector2d(result) if result is not None else None 5413 5414 @property 5415 def CQ(self) -> Vector2d: 5416 ''' 5417 Represents a readonly 2D vector. 5418 ''' 5419 result = self._Entity.CQ 5420 return Vector2d(result) if result is not None else None 5421 5422 @property 5423 def EnclosedArea(self) -> float: 5424 return self._Entity.EnclosedArea 5425 5426 @property 5427 def NumberOfCells(self) -> int: 5428 return self._Entity.NumberOfCells 5429 5430 @property 5431 def EIhh(self) -> float: 5432 return self._Entity.EIhh 5433 5434 @property 5435 def EIhv(self) -> float: 5436 return self._Entity.EIhv 5437 5438 @property 5439 def EIvv(self) -> float: 5440 return self._Entity.EIvv 5441 5442 @property 5443 def GJ(self) -> float: 5444 return self._Entity.GJ 5445 5446 @property 5447 def EA(self) -> float: 5448 return self._Entity.EA 5449 5450 @property 5451 def EImax(self) -> float: 5452 return self._Entity.EImax 5453 5454 @property 5455 def EImin(self) -> float: 5456 return self._Entity.EImin 5457 5458 @property 5459 def PrincipalAngle(self) -> float: 5460 return self._Entity.PrincipalAngle 5461 5462 @property 5463 def Elements(self) -> ElementCol: 5464 result = self._Entity.Elements 5465 return ElementCol(result) if result is not None else None 5466 5467 @property 5468 def PlateElements(self) -> ElementCol: 5469 result = self._Entity.PlateElements 5470 return ElementCol(result) if result is not None else None 5471 5472 @property 5473 def BeamElements(self) -> ElementCol: 5474 result = self._Entity.BeamElements 5475 return ElementCol(result) if result is not None else None 5476 5477 @ReferencePoint.setter 5478 def ReferencePoint(self, value: types.SectionCutPropertyLocation) -> None: 5479 self._Entity.ReferencePoint = _types.SectionCutPropertyLocation(value.value) 5480 5481 @MaxAngleBound.setter 5482 def MaxAngleBound(self, value: float) -> None: 5483 self._Entity.MaxAngleBound = value 5484 5485 @MinAngleBound.setter 5486 def MinAngleBound(self, value: float) -> None: 5487 self._Entity.MinAngleBound = value 5488 5489 @MinStiffnessEihh.setter 5490 def MinStiffnessEihh(self, value: float) -> None: 5491 self._Entity.MinStiffnessEihh = value 5492 5493 @MinStiffnessEivv.setter 5494 def MinStiffnessEivv(self, value: float) -> None: 5495 self._Entity.MinStiffnessEivv = value 5496 5497 @MinStiffnessGJ.setter 5498 def MinStiffnessGJ(self, value: float) -> None: 5499 self._Entity.MinStiffnessGJ = value 5500 5501 @ZoneStiffnessDistribution.setter 5502 def ZoneStiffnessDistribution(self, value: float) -> None: 5503 self._Entity.ZoneStiffnessDistribution = value 5504 5505 @CN_hmax.setter 5506 def CN_hmax(self, value: float) -> None: 5507 self._Entity.CN_hmax = value 5508 5509 @CN_hmin.setter 5510 def CN_hmin(self, value: float) -> None: 5511 self._Entity.CN_hmin = value 5512 5513 @CN_vmax.setter 5514 def CN_vmax(self, value: float) -> None: 5515 self._Entity.CN_vmax = value 5516 5517 @CN_vmin.setter 5518 def CN_vmin(self, value: float) -> None: 5519 self._Entity.CN_vmin = value 5520 5521 @CQ_hmax.setter 5522 def CQ_hmax(self, value: float) -> None: 5523 self._Entity.CQ_hmax = value 5524 5525 @CQ_hmin.setter 5526 def CQ_hmin(self, value: float) -> None: 5527 self._Entity.CQ_hmin = value 5528 5529 @CQ_vmax.setter 5530 def CQ_vmax(self, value: float) -> None: 5531 self._Entity.CQ_vmax = value 5532 5533 @CQ_vmin.setter 5534 def CQ_vmin(self, value: float) -> None: 5535 self._Entity.CQ_vmin = value 5536 5537 def AlignToHorizontalPrincipalAxes(self) -> None: 5538 ''' 5539 Set this Section Cut's horizontal vector to be equal to its principal axis horizontal vector. 5540 ''' 5541 return self._Entity.AlignToHorizontalPrincipalAxes() 5542 5543 def AlignToVerticalPrincipalAxes(self) -> None: 5544 ''' 5545 Set this Section Cut's horizontal vector to be equal to its principal axis vertical vector. 5546 ''' 5547 return self._Entity.AlignToVerticalPrincipalAxes() 5548 5549 def SetHorizontalVector(self, vector: Vector3d) -> None: 5550 return self._Entity.SetHorizontalVector(vector._Entity) 5551 5552 def SetNormalVector(self, vector: Vector3d) -> None: 5553 return self._Entity.SetNormalVector(vector._Entity) 5554 5555 def SetOrigin(self, vector: Vector3d) -> None: 5556 return self._Entity.SetOrigin(vector._Entity) 5557 5558 def GetBeamLoads(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> BeamLoads: 5559 return BeamLoads(self._Entity.GetBeamLoads(loadCaseId, _types.LoadSubCaseFactor(factor.value))) 5560 5561 def InclinationAngle(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5562 return self._Entity.InclinationAngle(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5563 5564 def HorizontalIntercept(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5565 return self._Entity.HorizontalIntercept(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5566 5567 def VerticalIntercept(self, loadCaseId: int, factor: types.LoadSubCaseFactor) -> float: 5568 return self._Entity.VerticalIntercept(loadCaseId, _types.LoadSubCaseFactor(factor.value)) 5569 5570 def SetElements(self, elements: list[int]) -> bool: 5571 elementsList = MakeCSharpIntList(elements) 5572 return self._Entity.SetElements(elementsList) 5573 5574 def SetElementsByIntersection(self) -> None: 5575 return self._Entity.SetElementsByIntersection()
Represents an entity with an ID and Name.
5303 @property 5304 def ReferencePoint(self) -> types.SectionCutPropertyLocation: 5305 ''' 5306 Centroid vs Origin 5307 ''' 5308 return types.SectionCutPropertyLocation[self._Entity.ReferencePoint.ToString()]
Centroid vs Origin
5310 @property 5311 def HorizontalVector(self) -> Vector3d: 5312 ''' 5313 Represents a readonly 3D vector. 5314 ''' 5315 result = self._Entity.HorizontalVector 5316 return Vector3d(result) if result is not None else None
Represents a readonly 3D vector.
5318 @property 5319 def NormalVector(self) -> Vector3d: 5320 ''' 5321 Represents a readonly 3D vector. 5322 ''' 5323 result = self._Entity.NormalVector 5324 return Vector3d(result) if result is not None else None
Represents a readonly 3D vector.
5326 @property 5327 def OriginVector(self) -> Vector3d: 5328 ''' 5329 Represents a readonly 3D vector. 5330 ''' 5331 result = self._Entity.OriginVector 5332 return Vector3d(result) if result is not None else None
Represents a readonly 3D vector.
5334 @property 5335 def VerticalVector(self) -> Vector3d: 5336 ''' 5337 Represents a readonly 3D vector. 5338 ''' 5339 result = self._Entity.VerticalVector 5340 return Vector3d(result) if result is not None else None
Represents a readonly 3D vector.
5398 @property 5399 def CG(self) -> Vector2d: 5400 ''' 5401 Represents a readonly 2D vector. 5402 ''' 5403 result = self._Entity.CG 5404 return Vector2d(result) if result is not None else None
Represents a readonly 2D vector.
5406 @property 5407 def CN(self) -> Vector2d: 5408 ''' 5409 Represents a readonly 2D vector. 5410 ''' 5411 result = self._Entity.CN 5412 return Vector2d(result) if result is not None else None
Represents a readonly 2D vector.
5414 @property 5415 def CQ(self) -> Vector2d: 5416 ''' 5417 Represents a readonly 2D vector. 5418 ''' 5419 result = self._Entity.CQ 5420 return Vector2d(result) if result is not None else None
Represents a readonly 2D vector.
5537 def AlignToHorizontalPrincipalAxes(self) -> None: 5538 ''' 5539 Set this Section Cut's horizontal vector to be equal to its principal axis horizontal vector. 5540 ''' 5541 return self._Entity.AlignToHorizontalPrincipalAxes()
Set this Section Cut's horizontal vector to be equal to its principal axis horizontal vector.
5543 def AlignToVerticalPrincipalAxes(self) -> None: 5544 ''' 5545 Set this Section Cut's horizontal vector to be equal to its principal axis vertical vector. 5546 ''' 5547 return self._Entity.AlignToVerticalPrincipalAxes()
Set this Section Cut's horizontal vector to be equal to its principal axis vertical vector.
Inherited Members
5578class Set(ZoneJointContainer): 5579 def __init__(self, set: _api.Set): 5580 self._Entity = set 5581 5582 @property 5583 def Joints(self) -> JointCol: 5584 result = self._Entity.Joints 5585 return JointCol(result) if result is not None else None 5586 5587 @property 5588 def PanelSegments(self) -> PanelSegmentCol: 5589 result = self._Entity.PanelSegments 5590 return PanelSegmentCol(result) if result is not None else None 5591 5592 @property 5593 def Zones(self) -> ZoneCol: 5594 result = self._Entity.Zones 5595 return ZoneCol(result) if result is not None else None 5596 5597 @overload 5598 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5599 5600 @overload 5601 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5602 5603 @overload 5604 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 5605 5606 @overload 5607 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 5608 5609 @overload 5610 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 5611 5612 @overload 5613 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 5614 5615 @overload 5616 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 5617 5618 @overload 5619 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 5620 5621 @overload 5622 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5623 5624 @overload 5625 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 5626 5627 @overload 5628 def AddZone(self, id: int) -> CollectionModificationStatus: ... 5629 5630 @overload 5631 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 5632 5633 @overload 5634 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 5635 5636 @overload 5637 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 5638 5639 @overload 5640 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 5641 5642 @overload 5643 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 5644 5645 @overload 5646 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 5647 5648 @overload 5649 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 5650 5651 @overload 5652 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5653 5654 @overload 5655 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 5656 5657 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5658 if isinstance(item1, Joint): 5659 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5660 5661 if isinstance(item1, int): 5662 return CollectionModificationStatus(super().AddJoint(item1)) 5663 5664 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5665 5666 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5667 if isinstance(item1, PanelSegment): 5668 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5669 5670 if isinstance(item1, int): 5671 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5672 5673 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5674 5675 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5676 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 5677 zonesList = List[_api.Zone]() 5678 if item1 is not None: 5679 for thing in item1: 5680 if thing is not None: 5681 zonesList.Add(thing._Entity) 5682 zonesEnumerable = IEnumerable(zonesList) 5683 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5684 5685 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5686 return CollectionModificationStatus(super().AddZones(item1)) 5687 5688 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()] 5689 5690 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5691 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5692 jointIdsList = MakeCSharpIntList(item1) 5693 jointIdsEnumerable = IEnumerable(jointIdsList) 5694 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5695 5696 if isinstance(item1, JointCol): 5697 return CollectionModificationStatus(super().RemoveJoints(item1)) 5698 5699 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()] 5700 5701 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5702 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5703 segmentIdsList = MakeCSharpIntList(item1) 5704 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5705 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5706 5707 if isinstance(item1, PanelSegmentCol): 5708 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5709 5710 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()] 5711 5712 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5713 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5714 zoneIdsList = MakeCSharpIntList(item1) 5715 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5716 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5717 5718 if isinstance(item1, ZoneCol): 5719 return CollectionModificationStatus(super().RemoveZones(item1)) 5720 5721 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()] 5722 5723 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5724 if isinstance(item1, int): 5725 return CollectionModificationStatus(super().RemoveJoint(item1)) 5726 5727 if isinstance(item1, Joint): 5728 return CollectionModificationStatus(super().RemoveJoint(item1)) 5729 5730 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 5731 5732 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5733 if isinstance(item1, int): 5734 return CollectionModificationStatus(super().AddZone(item1)) 5735 5736 if isinstance(item1, Zone): 5737 return CollectionModificationStatus(super().AddZone(item1)) 5738 5739 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 5740 5741 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5742 if isinstance(item1, int): 5743 return CollectionModificationStatus(super().RemoveZone(item1)) 5744 5745 if isinstance(item1, Zone): 5746 return CollectionModificationStatus(super().RemoveZone(item1)) 5747 5748 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 5749 5750 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 5751 if isinstance(item1, int): 5752 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5753 5754 if isinstance(item1, PanelSegment): 5755 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5756 5757 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()]
Represents an entity that contains a collection of Zones and Joints.
5657 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5658 if isinstance(item1, Joint): 5659 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5660 5661 if isinstance(item1, int): 5662 return CollectionModificationStatus(super().AddJoint(item1)) 5663 5664 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()]
5666 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5667 if isinstance(item1, PanelSegment): 5668 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5669 5670 if isinstance(item1, int): 5671 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5672 5673 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()]
5675 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5676 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 5677 zonesList = List[_api.Zone]() 5678 if item1 is not None: 5679 for thing in item1: 5680 if thing is not None: 5681 zonesList.Add(thing._Entity) 5682 zonesEnumerable = IEnumerable(zonesList) 5683 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5684 5685 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5686 return CollectionModificationStatus(super().AddZones(item1)) 5687 5688 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()]
5690 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5691 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5692 jointIdsList = MakeCSharpIntList(item1) 5693 jointIdsEnumerable = IEnumerable(jointIdsList) 5694 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5695 5696 if isinstance(item1, JointCol): 5697 return CollectionModificationStatus(super().RemoveJoints(item1)) 5698 5699 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()]
5701 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5702 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5703 segmentIdsList = MakeCSharpIntList(item1) 5704 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5705 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5706 5707 if isinstance(item1, PanelSegmentCol): 5708 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 5709 5710 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()]
5712 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 5713 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5714 zoneIdsList = MakeCSharpIntList(item1) 5715 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5716 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 5717 5718 if isinstance(item1, ZoneCol): 5719 return CollectionModificationStatus(super().RemoveZones(item1)) 5720 5721 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()]
5723 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 5724 if isinstance(item1, int): 5725 return CollectionModificationStatus(super().RemoveJoint(item1)) 5726 5727 if isinstance(item1, Joint): 5728 return CollectionModificationStatus(super().RemoveJoint(item1)) 5729 5730 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()]
5732 def AddZone(self, item1 = None) -> CollectionModificationStatus: 5733 if isinstance(item1, int): 5734 return CollectionModificationStatus(super().AddZone(item1)) 5735 5736 if isinstance(item1, Zone): 5737 return CollectionModificationStatus(super().AddZone(item1)) 5738 5739 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()]
5741 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 5742 if isinstance(item1, int): 5743 return CollectionModificationStatus(super().RemoveZone(item1)) 5744 5745 if isinstance(item1, Zone): 5746 return CollectionModificationStatus(super().RemoveZone(item1)) 5747 5748 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()]
5750 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 5751 if isinstance(item1, int): 5752 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5753 5754 if isinstance(item1, PanelSegment): 5755 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 5756 5757 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()]
5760class PlyCol(IdNameEntityCol[Ply]): 5761 def __init__(self, plyCol: _api.PlyCol): 5762 self._Entity = plyCol 5763 self._CollectedClass = Ply 5764 5765 @property 5766 def PlyColList(self) -> tuple[Ply]: 5767 return tuple([Ply(plyCol) for plyCol in self._Entity]) 5768 5769 def Delete(self, id: int) -> CollectionModificationStatus: 5770 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 5771 5772 def DeleteAll(self) -> None: 5773 ''' 5774 Delete all plies in the collection. 5775 ''' 5776 return self._Entity.DeleteAll() 5777 5778 def ExportToCSV(self, filepath: str) -> None: 5779 return self._Entity.ExportToCSV(filepath) 5780 5781 def ImportCSV(self, filepath: str) -> None: 5782 return self._Entity.ImportCSV(filepath) 5783 5784 @overload 5785 def Get(self, name: str) -> Ply: ... 5786 5787 @overload 5788 def Get(self, id: int) -> Ply: ... 5789 5790 def Get(self, item1 = None) -> Ply: 5791 if isinstance(item1, str): 5792 return Ply(super().Get(item1)) 5793 5794 if isinstance(item1, int): 5795 return Ply(super().Get(item1)) 5796 5797 return Ply(self._Entity.Get(item1)) 5798 5799 def __getitem__(self, index: int): 5800 return self.PlyColList[index] 5801 5802 def __iter__(self): 5803 yield from self.PlyColList 5804 5805 def __len__(self): 5806 return len(self.PlyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
5772 def DeleteAll(self) -> None: 5773 ''' 5774 Delete all plies in the collection. 5775 ''' 5776 return self._Entity.DeleteAll()
Delete all plies in the collection.
Inherited Members
5809class Structure(ZoneJointContainer): 5810 def __init__(self, structure: _api.Structure): 5811 self._Entity = structure 5812 5813 @property 5814 def Plies(self) -> PlyCol: 5815 result = self._Entity.Plies 5816 return PlyCol(result) if result is not None else None 5817 5818 @property 5819 def Joints(self) -> JointCol: 5820 result = self._Entity.Joints 5821 return JointCol(result) if result is not None else None 5822 5823 @property 5824 def PanelSegments(self) -> PanelSegmentCol: 5825 result = self._Entity.PanelSegments 5826 return PanelSegmentCol(result) if result is not None else None 5827 5828 @property 5829 def Zones(self) -> ZoneCol: 5830 result = self._Entity.Zones 5831 return ZoneCol(result) if result is not None else None 5832 5833 def ExportVCP(self, fileName: str) -> None: 5834 return self._Entity.ExportVCP(fileName) 5835 5836 def AddElements(self, elementIds: tuple[int]) -> CollectionModificationStatus: 5837 elementIdsList = MakeCSharpIntList(elementIds) 5838 elementIdsEnumerable = IEnumerable(elementIdsList) 5839 return CollectionModificationStatus[self._Entity.AddElements(elementIdsEnumerable).ToString()] 5840 5841 @overload 5842 def AddJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5843 5844 @overload 5845 def AddPanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5846 5847 def AddPfemProperties(self, pfemPropertyIds: tuple[int]) -> CollectionModificationStatus: 5848 pfemPropertyIdsList = MakeCSharpIntList(pfemPropertyIds) 5849 pfemPropertyIdsEnumerable = IEnumerable(pfemPropertyIdsList) 5850 return CollectionModificationStatus[self._Entity.AddPfemProperties(pfemPropertyIdsEnumerable).ToString()] 5851 5852 @overload 5853 def AddZones(self, zones: tuple[Zone]) -> CollectionModificationStatus: ... 5854 5855 def CreateZone(self, elementIds: tuple[int], name: str = None) -> Zone: 5856 elementIdsList = MakeCSharpIntList(elementIds) 5857 elementIdsEnumerable = IEnumerable(elementIdsList) 5858 result = self._Entity.CreateZone(elementIdsEnumerable, name) 5859 thisClass = type(result).__name__ 5860 givenClass = Zone 5861 for subclass in Zone.__subclasses__(): 5862 if subclass.__name__ == thisClass: 5863 givenClass = subclass 5864 return givenClass(result) 5865 5866 def CreatePanelSegment(self, discreteTechnique: types.DiscreteTechnique, discreteElementLkp: dict[types.DiscreteDefinitionType, list[int]], name: str = None) -> PanelSegment: 5867 discreteElementLkpDict = Dictionary[_types.DiscreteDefinitionType, List[int]]() 5868 for kvp in discreteElementLkp: 5869 discreteElementLkpDict.Add(_types.DiscreteDefinitionType(kvp.value), MakeCSharpIntList(discreteElementLkp[kvp])) 5870 return PanelSegment(self._Entity.CreatePanelSegment(_types.DiscreteTechnique(discreteTechnique.value), discreteElementLkpDict, name)) 5871 5872 @overload 5873 def Remove(self, zoneIds: tuple[int], jointIds: tuple[int]) -> CollectionModificationStatus: ... 5874 5875 @overload 5876 def Remove(self, zoneIds: tuple[int], jointIds: tuple[int], panelSegmentIds: tuple[int]) -> CollectionModificationStatus: ... 5877 5878 @overload 5879 def RemoveJoints(self, jointIds: tuple[int]) -> CollectionModificationStatus: ... 5880 5881 @overload 5882 def RemovePanelSegments(self, segmentIds: tuple[int]) -> CollectionModificationStatus: ... 5883 5884 @overload 5885 def RemoveZones(self, zoneIds: tuple[int]) -> CollectionModificationStatus: ... 5886 5887 @overload 5888 def AddJoint(self, id: int) -> CollectionModificationStatus: ... 5889 5890 @overload 5891 def RemoveJoint(self, id: int) -> CollectionModificationStatus: ... 5892 5893 @overload 5894 def RemoveJoint(self, joint: Joint) -> CollectionModificationStatus: ... 5895 5896 @overload 5897 def RemoveJoints(self, joints: JointCol) -> CollectionModificationStatus: ... 5898 5899 @overload 5900 def AddZone(self, id: int) -> CollectionModificationStatus: ... 5901 5902 @overload 5903 def AddZones(self, ids: tuple[int]) -> CollectionModificationStatus: ... 5904 5905 @overload 5906 def AddZone(self, zone: Zone) -> CollectionModificationStatus: ... 5907 5908 @overload 5909 def RemoveZone(self, id: int) -> CollectionModificationStatus: ... 5910 5911 @overload 5912 def RemoveZone(self, zone: Zone) -> CollectionModificationStatus: ... 5913 5914 @overload 5915 def RemoveZones(self, zones: ZoneCol) -> CollectionModificationStatus: ... 5916 5917 @overload 5918 def AddPanelSegment(self, id: int) -> CollectionModificationStatus: ... 5919 5920 @overload 5921 def RemovePanelSegment(self, id: int) -> CollectionModificationStatus: ... 5922 5923 @overload 5924 def RemovePanelSegment(self, segment: PanelSegment) -> CollectionModificationStatus: ... 5925 5926 @overload 5927 def RemovePanelSegments(self, segments: PanelSegmentCol) -> CollectionModificationStatus: ... 5928 5929 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5930 if isinstance(item1, Joint): 5931 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5932 5933 if isinstance(item1, int): 5934 return CollectionModificationStatus(super().AddJoint(item1)) 5935 5936 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5937 5938 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5939 if isinstance(item1, PanelSegment): 5940 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5941 5942 if isinstance(item1, int): 5943 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5944 5945 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5946 5947 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5948 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 5949 zonesList = List[_api.Zone]() 5950 if item1 is not None: 5951 for thing in item1: 5952 if thing is not None: 5953 zonesList.Add(thing._Entity) 5954 zonesEnumerable = IEnumerable(zonesList) 5955 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5956 5957 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5958 return CollectionModificationStatus(super().AddZones(item1)) 5959 5960 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()] 5961 5962 def Remove(self, item1 = None, item2 = None, item3 = None) -> CollectionModificationStatus: 5963 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, tuple) and item2 and isinstance(item2[0], int) and isinstance(item3, tuple) and item3 and isinstance(item3[0], int): 5964 zoneIdsList = MakeCSharpIntList(item1) 5965 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5966 jointIdsList = MakeCSharpIntList(item2) 5967 jointIdsEnumerable = IEnumerable(jointIdsList) 5968 panelSegmentIdsList = MakeCSharpIntList(item3) 5969 panelSegmentIdsEnumerable = IEnumerable(panelSegmentIdsList) 5970 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable, panelSegmentIdsEnumerable).ToString()] 5971 5972 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, tuple) and item2 and isinstance(item2[0], int): 5973 zoneIdsList = MakeCSharpIntList(item1) 5974 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5975 jointIdsList = MakeCSharpIntList(item2) 5976 jointIdsEnumerable = IEnumerable(jointIdsList) 5977 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable).ToString()] 5978 5979 return CollectionModificationStatus[self._Entity.Remove(item1, item2, item3).ToString()] 5980 5981 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5982 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5983 jointIdsList = MakeCSharpIntList(item1) 5984 jointIdsEnumerable = IEnumerable(jointIdsList) 5985 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5986 5987 if isinstance(item1, JointCol): 5988 return CollectionModificationStatus(super().RemoveJoints(item1)) 5989 5990 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()] 5991 5992 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5993 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5994 segmentIdsList = MakeCSharpIntList(item1) 5995 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5996 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5997 5998 if isinstance(item1, PanelSegmentCol): 5999 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 6000 6001 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()] 6002 6003 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 6004 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 6005 zoneIdsList = MakeCSharpIntList(item1) 6006 zoneIdsEnumerable = IEnumerable(zoneIdsList) 6007 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 6008 6009 if isinstance(item1, ZoneCol): 6010 return CollectionModificationStatus(super().RemoveZones(item1)) 6011 6012 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()] 6013 6014 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 6015 if isinstance(item1, int): 6016 return CollectionModificationStatus(super().RemoveJoint(item1)) 6017 6018 if isinstance(item1, Joint): 6019 return CollectionModificationStatus(super().RemoveJoint(item1)) 6020 6021 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()] 6022 6023 def AddZone(self, item1 = None) -> CollectionModificationStatus: 6024 if isinstance(item1, int): 6025 return CollectionModificationStatus(super().AddZone(item1)) 6026 6027 if isinstance(item1, Zone): 6028 return CollectionModificationStatus(super().AddZone(item1)) 6029 6030 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()] 6031 6032 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 6033 if isinstance(item1, int): 6034 return CollectionModificationStatus(super().RemoveZone(item1)) 6035 6036 if isinstance(item1, Zone): 6037 return CollectionModificationStatus(super().RemoveZone(item1)) 6038 6039 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()] 6040 6041 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 6042 if isinstance(item1, int): 6043 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6044 6045 if isinstance(item1, PanelSegment): 6046 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6047 6048 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()]
Represents an entity that contains a collection of Zones and Joints.
5929 def AddJoint(self, item1 = None) -> CollectionModificationStatus: 5930 if isinstance(item1, Joint): 5931 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()] 5932 5933 if isinstance(item1, int): 5934 return CollectionModificationStatus(super().AddJoint(item1)) 5935 5936 return CollectionModificationStatus[self._Entity.AddJoint(item1._Entity).ToString()]
5938 def AddPanelSegment(self, item1 = None) -> CollectionModificationStatus: 5939 if isinstance(item1, PanelSegment): 5940 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()] 5941 5942 if isinstance(item1, int): 5943 return CollectionModificationStatus(super().AddPanelSegment(item1)) 5944 5945 return CollectionModificationStatus[self._Entity.AddPanelSegment(item1._Entity).ToString()]
5847 def AddPfemProperties(self, pfemPropertyIds: tuple[int]) -> CollectionModificationStatus: 5848 pfemPropertyIdsList = MakeCSharpIntList(pfemPropertyIds) 5849 pfemPropertyIdsEnumerable = IEnumerable(pfemPropertyIdsList) 5850 return CollectionModificationStatus[self._Entity.AddPfemProperties(pfemPropertyIdsEnumerable).ToString()]
5947 def AddZones(self, item1 = None) -> CollectionModificationStatus: 5948 if isinstance(item1, tuple) and item1 and isinstance(item1[0], Zone): 5949 zonesList = List[_api.Zone]() 5950 if item1 is not None: 5951 for thing in item1: 5952 if thing is not None: 5953 zonesList.Add(thing._Entity) 5954 zonesEnumerable = IEnumerable(zonesList) 5955 return CollectionModificationStatus[self._Entity.AddZones(zonesEnumerable).ToString()] 5956 5957 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5958 return CollectionModificationStatus(super().AddZones(item1)) 5959 5960 return CollectionModificationStatus[self._Entity.AddZones(item1).ToString()]
5855 def CreateZone(self, elementIds: tuple[int], name: str = None) -> Zone: 5856 elementIdsList = MakeCSharpIntList(elementIds) 5857 elementIdsEnumerable = IEnumerable(elementIdsList) 5858 result = self._Entity.CreateZone(elementIdsEnumerable, name) 5859 thisClass = type(result).__name__ 5860 givenClass = Zone 5861 for subclass in Zone.__subclasses__(): 5862 if subclass.__name__ == thisClass: 5863 givenClass = subclass 5864 return givenClass(result)
5866 def CreatePanelSegment(self, discreteTechnique: types.DiscreteTechnique, discreteElementLkp: dict[types.DiscreteDefinitionType, list[int]], name: str = None) -> PanelSegment: 5867 discreteElementLkpDict = Dictionary[_types.DiscreteDefinitionType, List[int]]() 5868 for kvp in discreteElementLkp: 5869 discreteElementLkpDict.Add(_types.DiscreteDefinitionType(kvp.value), MakeCSharpIntList(discreteElementLkp[kvp])) 5870 return PanelSegment(self._Entity.CreatePanelSegment(_types.DiscreteTechnique(discreteTechnique.value), discreteElementLkpDict, name))
5962 def Remove(self, item1 = None, item2 = None, item3 = None) -> CollectionModificationStatus: 5963 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, tuple) and item2 and isinstance(item2[0], int) and isinstance(item3, tuple) and item3 and isinstance(item3[0], int): 5964 zoneIdsList = MakeCSharpIntList(item1) 5965 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5966 jointIdsList = MakeCSharpIntList(item2) 5967 jointIdsEnumerable = IEnumerable(jointIdsList) 5968 panelSegmentIdsList = MakeCSharpIntList(item3) 5969 panelSegmentIdsEnumerable = IEnumerable(panelSegmentIdsList) 5970 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable, panelSegmentIdsEnumerable).ToString()] 5971 5972 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, tuple) and item2 and isinstance(item2[0], int): 5973 zoneIdsList = MakeCSharpIntList(item1) 5974 zoneIdsEnumerable = IEnumerable(zoneIdsList) 5975 jointIdsList = MakeCSharpIntList(item2) 5976 jointIdsEnumerable = IEnumerable(jointIdsList) 5977 return CollectionModificationStatus[self._Entity.Remove(zoneIdsEnumerable, jointIdsEnumerable).ToString()] 5978 5979 return CollectionModificationStatus[self._Entity.Remove(item1, item2, item3).ToString()]
5981 def RemoveJoints(self, item1 = None) -> CollectionModificationStatus: 5982 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5983 jointIdsList = MakeCSharpIntList(item1) 5984 jointIdsEnumerable = IEnumerable(jointIdsList) 5985 return CollectionModificationStatus[self._Entity.RemoveJoints(jointIdsEnumerable).ToString()] 5986 5987 if isinstance(item1, JointCol): 5988 return CollectionModificationStatus(super().RemoveJoints(item1)) 5989 5990 return CollectionModificationStatus[self._Entity.RemoveJoints(item1).ToString()]
5992 def RemovePanelSegments(self, item1 = None) -> CollectionModificationStatus: 5993 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 5994 segmentIdsList = MakeCSharpIntList(item1) 5995 segmentIdsEnumerable = IEnumerable(segmentIdsList) 5996 return CollectionModificationStatus[self._Entity.RemovePanelSegments(segmentIdsEnumerable).ToString()] 5997 5998 if isinstance(item1, PanelSegmentCol): 5999 return CollectionModificationStatus(super().RemovePanelSegments(item1)) 6000 6001 return CollectionModificationStatus[self._Entity.RemovePanelSegments(item1).ToString()]
6003 def RemoveZones(self, item1 = None) -> CollectionModificationStatus: 6004 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int): 6005 zoneIdsList = MakeCSharpIntList(item1) 6006 zoneIdsEnumerable = IEnumerable(zoneIdsList) 6007 return CollectionModificationStatus[self._Entity.RemoveZones(zoneIdsEnumerable).ToString()] 6008 6009 if isinstance(item1, ZoneCol): 6010 return CollectionModificationStatus(super().RemoveZones(item1)) 6011 6012 return CollectionModificationStatus[self._Entity.RemoveZones(item1).ToString()]
6014 def RemoveJoint(self, item1 = None) -> CollectionModificationStatus: 6015 if isinstance(item1, int): 6016 return CollectionModificationStatus(super().RemoveJoint(item1)) 6017 6018 if isinstance(item1, Joint): 6019 return CollectionModificationStatus(super().RemoveJoint(item1)) 6020 6021 return CollectionModificationStatus[self._Entity.RemoveJoint(item1).ToString()]
6023 def AddZone(self, item1 = None) -> CollectionModificationStatus: 6024 if isinstance(item1, int): 6025 return CollectionModificationStatus(super().AddZone(item1)) 6026 6027 if isinstance(item1, Zone): 6028 return CollectionModificationStatus(super().AddZone(item1)) 6029 6030 return CollectionModificationStatus[self._Entity.AddZone(item1).ToString()]
6032 def RemoveZone(self, item1 = None) -> CollectionModificationStatus: 6033 if isinstance(item1, int): 6034 return CollectionModificationStatus(super().RemoveZone(item1)) 6035 6036 if isinstance(item1, Zone): 6037 return CollectionModificationStatus(super().RemoveZone(item1)) 6038 6039 return CollectionModificationStatus[self._Entity.RemoveZone(item1).ToString()]
6041 def RemovePanelSegment(self, item1 = None) -> CollectionModificationStatus: 6042 if isinstance(item1, int): 6043 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6044 6045 if isinstance(item1, PanelSegment): 6046 return CollectionModificationStatus(super().RemovePanelSegment(item1)) 6047 6048 return CollectionModificationStatus[self._Entity.RemovePanelSegment(item1).ToString()]
6051class AnalysisPropertyCol(IdNameEntityCol[AnalysisProperty]): 6052 def __init__(self, analysisPropertyCol: _api.AnalysisPropertyCol): 6053 self._Entity = analysisPropertyCol 6054 self._CollectedClass = AnalysisProperty 6055 6056 @property 6057 def AnalysisPropertyColList(self) -> tuple[AnalysisProperty]: 6058 return tuple([AnalysisProperty(analysisPropertyCol) for analysisPropertyCol in self._Entity]) 6059 6060 def CreateAnalysisProperty(self, type: types.FamilyCategory, name: str = None) -> AnalysisProperty: 6061 return AnalysisProperty(self._Entity.CreateAnalysisProperty(_types.FamilyCategory(type.value), name)) 6062 6063 @overload 6064 def DeleteAnalysisProperty(self, name: str) -> bool: ... 6065 6066 @overload 6067 def DeleteAnalysisProperty(self, id: int) -> bool: ... 6068 6069 @overload 6070 def Get(self, name: str) -> AnalysisProperty: ... 6071 6072 @overload 6073 def Get(self, id: int) -> AnalysisProperty: ... 6074 6075 def DeleteAnalysisProperty(self, item1 = None) -> bool: 6076 if isinstance(item1, str): 6077 return self._Entity.DeleteAnalysisProperty(item1) 6078 6079 if isinstance(item1, int): 6080 return self._Entity.DeleteAnalysisProperty(item1) 6081 6082 return self._Entity.DeleteAnalysisProperty(item1) 6083 6084 def Get(self, item1 = None) -> AnalysisProperty: 6085 if isinstance(item1, str): 6086 return AnalysisProperty(super().Get(item1)) 6087 6088 if isinstance(item1, int): 6089 return AnalysisProperty(super().Get(item1)) 6090 6091 return AnalysisProperty(self._Entity.Get(item1)) 6092 6093 def __getitem__(self, index: int): 6094 return self.AnalysisPropertyColList[index] 6095 6096 def __iter__(self): 6097 yield from self.AnalysisPropertyColList 6098 6099 def __len__(self): 6100 return len(self.AnalysisPropertyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6103class DesignPropertyCol(IdNameEntityCol[DesignProperty]): 6104 def __init__(self, designPropertyCol: _api.DesignPropertyCol): 6105 self._Entity = designPropertyCol 6106 self._CollectedClass = DesignProperty 6107 6108 @property 6109 def DesignPropertyColList(self) -> tuple[DesignProperty]: 6110 return tuple([DesignProperty(designPropertyCol) for designPropertyCol in self._Entity]) 6111 6112 def CreateDesignProperty(self, familyConcept: types.FamilyConceptUID, materialMode: types.MaterialMode = types.MaterialMode.Any, name: str = None) -> DesignProperty: 6113 result = self._Entity.CreateDesignProperty(_types.FamilyConceptUID(familyConcept.value), _types.MaterialMode(materialMode.value), name) 6114 thisClass = type(result).__name__ 6115 givenClass = DesignProperty 6116 for subclass in DesignProperty.__subclasses__(): 6117 if subclass.__name__ == thisClass: 6118 givenClass = subclass 6119 return givenClass(result) 6120 6121 @overload 6122 def Get(self, name: str) -> DesignProperty: ... 6123 6124 @overload 6125 def Get(self, id: int) -> DesignProperty: ... 6126 6127 def Get(self, item1 = None) -> DesignProperty: 6128 if isinstance(item1, str): 6129 return DesignProperty(super().Get(item1)) 6130 6131 if isinstance(item1, int): 6132 return DesignProperty(super().Get(item1)) 6133 6134 result = self._Entity.Get(item1) 6135 thisClass = type(result).__name__ 6136 givenClass = DesignProperty 6137 for subclass in DesignProperty.__subclasses__(): 6138 if subclass.__name__ == thisClass: 6139 givenClass = subclass 6140 return givenClass(result) 6141 6142 def __getitem__(self, index: int): 6143 return self.DesignPropertyColList[index] 6144 6145 def __iter__(self): 6146 yield from self.DesignPropertyColList 6147 6148 def __len__(self): 6149 return len(self.DesignPropertyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6112 def CreateDesignProperty(self, familyConcept: types.FamilyConceptUID, materialMode: types.MaterialMode = types.MaterialMode.Any, name: str = None) -> DesignProperty: 6113 result = self._Entity.CreateDesignProperty(_types.FamilyConceptUID(familyConcept.value), _types.MaterialMode(materialMode.value), name) 6114 thisClass = type(result).__name__ 6115 givenClass = DesignProperty 6116 for subclass in DesignProperty.__subclasses__(): 6117 if subclass.__name__ == thisClass: 6118 givenClass = subclass 6119 return givenClass(result)
6127 def Get(self, item1 = None) -> DesignProperty: 6128 if isinstance(item1, str): 6129 return DesignProperty(super().Get(item1)) 6130 6131 if isinstance(item1, int): 6132 return DesignProperty(super().Get(item1)) 6133 6134 result = self._Entity.Get(item1) 6135 thisClass = type(result).__name__ 6136 givenClass = DesignProperty 6137 for subclass in DesignProperty.__subclasses__(): 6138 if subclass.__name__ == thisClass: 6139 givenClass = subclass 6140 return givenClass(result)
Inherited Members
6152class LoadPropertyCol(IdNameEntityCol[LoadProperty]): 6153 def __init__(self, loadPropertyCol: _api.LoadPropertyCol): 6154 self._Entity = loadPropertyCol 6155 self._CollectedClass = LoadProperty 6156 6157 @property 6158 def LoadPropertyColList(self) -> tuple[LoadProperty]: 6159 return tuple([LoadProperty(loadPropertyCol) for loadPropertyCol in self._Entity]) 6160 6161 def CreateLoadProperty(self, loadPropertyType: types.LoadPropertyType, category: types.FamilyCategory, name: str = None) -> LoadProperty: 6162 result = self._Entity.CreateLoadProperty(_types.LoadPropertyType(loadPropertyType.value), _types.FamilyCategory(category.value), name) 6163 thisClass = type(result).__name__ 6164 givenClass = LoadProperty 6165 for subclass in LoadProperty.__subclasses__(): 6166 if subclass.__name__ == thisClass: 6167 givenClass = subclass 6168 return givenClass(result) 6169 6170 @overload 6171 def DeleteLoadProperty(self, id: int) -> bool: ... 6172 6173 @overload 6174 def DeleteLoadProperty(self, name: str) -> bool: ... 6175 6176 @overload 6177 def Get(self, name: str) -> LoadProperty: ... 6178 6179 @overload 6180 def Get(self, id: int) -> LoadProperty: ... 6181 6182 def DeleteLoadProperty(self, item1 = None) -> bool: 6183 if isinstance(item1, int): 6184 return self._Entity.DeleteLoadProperty(item1) 6185 6186 if isinstance(item1, str): 6187 return self._Entity.DeleteLoadProperty(item1) 6188 6189 return self._Entity.DeleteLoadProperty(item1) 6190 6191 def Get(self, item1 = None) -> LoadProperty: 6192 if isinstance(item1, str): 6193 return LoadProperty(super().Get(item1)) 6194 6195 if isinstance(item1, int): 6196 return LoadProperty(super().Get(item1)) 6197 6198 result = self._Entity.Get(item1) 6199 thisClass = type(result).__name__ 6200 givenClass = LoadProperty 6201 for subclass in LoadProperty.__subclasses__(): 6202 if subclass.__name__ == thisClass: 6203 givenClass = subclass 6204 return givenClass(result) 6205 6206 def __getitem__(self, index: int): 6207 return self.LoadPropertyColList[index] 6208 6209 def __iter__(self): 6210 yield from self.LoadPropertyColList 6211 6212 def __len__(self): 6213 return len(self.LoadPropertyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6161 def CreateLoadProperty(self, loadPropertyType: types.LoadPropertyType, category: types.FamilyCategory, name: str = None) -> LoadProperty: 6162 result = self._Entity.CreateLoadProperty(_types.LoadPropertyType(loadPropertyType.value), _types.FamilyCategory(category.value), name) 6163 thisClass = type(result).__name__ 6164 givenClass = LoadProperty 6165 for subclass in LoadProperty.__subclasses__(): 6166 if subclass.__name__ == thisClass: 6167 givenClass = subclass 6168 return givenClass(result)
6191 def Get(self, item1 = None) -> LoadProperty: 6192 if isinstance(item1, str): 6193 return LoadProperty(super().Get(item1)) 6194 6195 if isinstance(item1, int): 6196 return LoadProperty(super().Get(item1)) 6197 6198 result = self._Entity.Get(item1) 6199 thisClass = type(result).__name__ 6200 givenClass = LoadProperty 6201 for subclass in LoadProperty.__subclasses__(): 6202 if subclass.__name__ == thisClass: 6203 givenClass = subclass 6204 return givenClass(result)
Inherited Members
6216class DesignLoadCol(IdNameEntityCol[DesignLoad]): 6217 def __init__(self, designLoadCol: _api.DesignLoadCol): 6218 self._Entity = designLoadCol 6219 self._CollectedClass = DesignLoad 6220 6221 @property 6222 def DesignLoadColList(self) -> tuple[DesignLoad]: 6223 return tuple([DesignLoad(designLoadCol) for designLoadCol in self._Entity]) 6224 6225 @overload 6226 def Get(self, name: str) -> DesignLoad: ... 6227 6228 @overload 6229 def Get(self, id: int) -> DesignLoad: ... 6230 6231 def Get(self, item1 = None) -> DesignLoad: 6232 if isinstance(item1, str): 6233 return DesignLoad(super().Get(item1)) 6234 6235 if isinstance(item1, int): 6236 return DesignLoad(super().Get(item1)) 6237 6238 return DesignLoad(self._Entity.Get(item1)) 6239 6240 def __getitem__(self, index: int): 6241 return self.DesignLoadColList[index] 6242 6243 def __iter__(self): 6244 yield from self.DesignLoadColList 6245 6246 def __len__(self): 6247 return len(self.DesignLoadColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6250class DiscreteFieldCol(IdNameEntityCol[DiscreteField]): 6251 def __init__(self, discreteFieldCol: _api.DiscreteFieldCol): 6252 self._Entity = discreteFieldCol 6253 self._CollectedClass = DiscreteField 6254 6255 @property 6256 def DiscreteFieldColList(self) -> tuple[DiscreteField]: 6257 return tuple([DiscreteField(discreteFieldCol) for discreteFieldCol in self._Entity]) 6258 6259 def Create(self, entityType: types.DiscreteFieldPhysicalEntityType, dataType: types.DiscreteFieldDataType, name: str = None) -> DiscreteField: 6260 return DiscreteField(self._Entity.Create(_types.DiscreteFieldPhysicalEntityType(entityType.value), _types.DiscreteFieldDataType(dataType.value), name)) 6261 6262 def CreateFromVCP(self, filepath: str) -> list[DiscreteField]: 6263 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateFromVCP(filepath)] 6264 6265 def Delete(self, id: int) -> CollectionModificationStatus: 6266 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 6267 6268 def CreateByPointMapToElements(self, elementIds: list[int], discreteFieldIds: list[int], suffix: str = None, tolerance: float = None) -> list[DiscreteField]: 6269 elementIdsList = MakeCSharpIntList(elementIds) 6270 discreteFieldIdsList = MakeCSharpIntList(discreteFieldIds) 6271 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateByPointMapToElements(elementIdsList, discreteFieldIdsList, suffix, tolerance)] 6272 6273 @overload 6274 def Get(self, name: str) -> DiscreteField: ... 6275 6276 @overload 6277 def Get(self, id: int) -> DiscreteField: ... 6278 6279 def Get(self, item1 = None) -> DiscreteField: 6280 if isinstance(item1, str): 6281 return DiscreteField(super().Get(item1)) 6282 6283 if isinstance(item1, int): 6284 return DiscreteField(super().Get(item1)) 6285 6286 return DiscreteField(self._Entity.Get(item1)) 6287 6288 def __getitem__(self, index: int): 6289 return self.DiscreteFieldColList[index] 6290 6291 def __iter__(self): 6292 yield from self.DiscreteFieldColList 6293 6294 def __len__(self): 6295 return len(self.DiscreteFieldColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6259 def Create(self, entityType: types.DiscreteFieldPhysicalEntityType, dataType: types.DiscreteFieldDataType, name: str = None) -> DiscreteField: 6260 return DiscreteField(self._Entity.Create(_types.DiscreteFieldPhysicalEntityType(entityType.value), _types.DiscreteFieldDataType(dataType.value), name))
6268 def CreateByPointMapToElements(self, elementIds: list[int], discreteFieldIds: list[int], suffix: str = None, tolerance: float = None) -> list[DiscreteField]: 6269 elementIdsList = MakeCSharpIntList(elementIds) 6270 discreteFieldIdsList = MakeCSharpIntList(discreteFieldIds) 6271 return [DiscreteField(discreteField) for discreteField in self._Entity.CreateByPointMapToElements(elementIdsList, discreteFieldIdsList, suffix, tolerance)]
Inherited Members
6298class ZoneJointContainerCol(IdNameEntityCol, Generic[T]): 6299 def __init__(self, zoneJointContainerCol: _api.ZoneJointContainerCol): 6300 self._Entity = zoneJointContainerCol 6301 self._CollectedClass = T 6302 6303 @property 6304 def ZoneJointContainerColList(self) -> tuple[T]: 6305 if self._Entity.Count() <= 0: 6306 return () 6307 thisClass = type(self._Entity._items[0]).__name__ 6308 givenClass = T 6309 for subclass in T.__subclasses__(): 6310 if subclass.__name__ == thisClass: 6311 givenClass = subclass 6312 return tuple([givenClass(zoneJointContainerCol) for zoneJointContainerCol in self._Entity]) 6313 6314 @abstractmethod 6315 def Create(self, name: str) -> T: 6316 return self._Entity.Create(name) 6317 6318 @overload 6319 def Get(self, name: str) -> T: ... 6320 6321 @overload 6322 def Get(self, id: int) -> T: ... 6323 6324 def Get(self, item1 = None) -> T: 6325 if isinstance(item1, str): 6326 return super().Get(item1) 6327 6328 if isinstance(item1, int): 6329 return super().Get(item1) 6330 6331 return self._Entity.Get(item1) 6332 6333 def __getitem__(self, index: int): 6334 return self.ZoneJointContainerColList[index] 6335 6336 def __iter__(self): 6337 yield from self.ZoneJointContainerColList 6338 6339 def __len__(self): 6340 return len(self.ZoneJointContainerColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6303 @property 6304 def ZoneJointContainerColList(self) -> tuple[T]: 6305 if self._Entity.Count() <= 0: 6306 return () 6307 thisClass = type(self._Entity._items[0]).__name__ 6308 givenClass = T 6309 for subclass in T.__subclasses__(): 6310 if subclass.__name__ == thisClass: 6311 givenClass = subclass 6312 return tuple([givenClass(zoneJointContainerCol) for zoneJointContainerCol in self._Entity])
Inherited Members
6343class RundeckCol(IdEntityCol[Rundeck]): 6344 def __init__(self, rundeckCol: _api.RundeckCol): 6345 self._Entity = rundeckCol 6346 self._CollectedClass = Rundeck 6347 6348 @property 6349 def RundeckColList(self) -> tuple[Rundeck]: 6350 return tuple([Rundeck(rundeckCol) for rundeckCol in self._Entity]) 6351 6352 def AddRundeck(self, inputPath: str, resultPath: str = None) -> Rundeck: 6353 return Rundeck(self._Entity.AddRundeck(inputPath, resultPath)) 6354 6355 def ReassignPrimary(self, id: int) -> RundeckUpdateStatus: 6356 return RundeckUpdateStatus[self._Entity.ReassignPrimary(id).ToString()] 6357 6358 def RemoveRundeck(self, id: int) -> RundeckRemoveStatus: 6359 return RundeckRemoveStatus[self._Entity.RemoveRundeck(id).ToString()] 6360 6361 def UpdateAllRundecks(self, newPaths: list[RundeckPathPair]) -> RundeckBulkUpdateStatus: 6362 newPathsList = List[_api.RundeckPathPair]() 6363 if newPaths is not None: 6364 for thing in newPaths: 6365 if thing is not None: 6366 newPathsList.Add(thing._Entity) 6367 return RundeckBulkUpdateStatus[self._Entity.UpdateAllRundecks(newPathsList).ToString()] 6368 6369 def GetRundeckPathSetters(self) -> list[RundeckPathPair]: 6370 ''' 6371 Get RundeckPathSetters to be edited and input to UpdateAllRundecks. 6372 ''' 6373 return [RundeckPathPair(rundeckPathPair) for rundeckPathPair in self._Entity.GetRundeckPathSetters()] 6374 6375 def ReplaceStringInAllPaths(self, stringToReplace: str, newString: str) -> RundeckBulkUpdateStatus: 6376 return RundeckBulkUpdateStatus[self._Entity.ReplaceStringInAllPaths(stringToReplace, newString).ToString()] 6377 6378 def __getitem__(self, index: int): 6379 return self.RundeckColList[index] 6380 6381 def __iter__(self): 6382 yield from self.RundeckColList 6383 6384 def __len__(self): 6385 return len(self.RundeckColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6361 def UpdateAllRundecks(self, newPaths: list[RundeckPathPair]) -> RundeckBulkUpdateStatus: 6362 newPathsList = List[_api.RundeckPathPair]() 6363 if newPaths is not None: 6364 for thing in newPaths: 6365 if thing is not None: 6366 newPathsList.Add(thing._Entity) 6367 return RundeckBulkUpdateStatus[self._Entity.UpdateAllRundecks(newPathsList).ToString()]
6369 def GetRundeckPathSetters(self) -> list[RundeckPathPair]: 6370 ''' 6371 Get RundeckPathSetters to be edited and input to UpdateAllRundecks. 6372 ''' 6373 return [RundeckPathPair(rundeckPathPair) for rundeckPathPair in self._Entity.GetRundeckPathSetters()]
Get RundeckPathSetters to be edited and input to UpdateAllRundecks.
Inherited Members
6388class SectionCutCol(IdNameEntityCol[SectionCut]): 6389 def __init__(self, sectionCutCol: _api.SectionCutCol): 6390 self._Entity = sectionCutCol 6391 self._CollectedClass = SectionCut 6392 6393 @property 6394 def SectionCutColList(self) -> tuple[SectionCut]: 6395 return tuple([SectionCut(sectionCutCol) for sectionCutCol in self._Entity]) 6396 6397 def Create(self, origin: Vector3d, normal: Vector3d, horizontal: Vector3d, name: str = None) -> SectionCut: 6398 return SectionCut(self._Entity.Create(origin._Entity, normal._Entity, horizontal._Entity, name)) 6399 6400 def Delete(self, id: int) -> CollectionModificationStatus: 6401 return CollectionModificationStatus[self._Entity.Delete(id).ToString()] 6402 6403 @overload 6404 def Get(self, name: str) -> SectionCut: ... 6405 6406 @overload 6407 def Get(self, id: int) -> SectionCut: ... 6408 6409 def Get(self, item1 = None) -> SectionCut: 6410 if isinstance(item1, str): 6411 return SectionCut(super().Get(item1)) 6412 6413 if isinstance(item1, int): 6414 return SectionCut(super().Get(item1)) 6415 6416 return SectionCut(self._Entity.Get(item1)) 6417 6418 def __getitem__(self, index: int): 6419 return self.SectionCutColList[index] 6420 6421 def __iter__(self): 6422 yield from self.SectionCutColList 6423 6424 def __len__(self): 6425 return len(self.SectionCutColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6428class SetCol(ZoneJointContainerCol[Set]): 6429 def __init__(self, setCol: _api.SetCol): 6430 self._Entity = setCol 6431 self._CollectedClass = Set 6432 6433 @property 6434 def SetColList(self) -> tuple[Set]: 6435 return tuple([Set(setCol) for setCol in self._Entity]) 6436 6437 def Create(self, name: str = None) -> Set: 6438 return Set(self._Entity.Create(name)) 6439 6440 @overload 6441 def Get(self, name: str) -> Set: ... 6442 6443 @overload 6444 def Get(self, id: int) -> Set: ... 6445 6446 def Get(self, item1 = None) -> Set: 6447 if isinstance(item1, str): 6448 return Set(super().Get(item1)) 6449 6450 if isinstance(item1, int): 6451 return Set(super().Get(item1)) 6452 6453 return Set(self._Entity.Get(item1)) 6454 6455 def __getitem__(self, index: int): 6456 return self.SetColList[index] 6457 6458 def __iter__(self): 6459 yield from self.SetColList 6460 6461 def __len__(self): 6462 return len(self.SetColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6465class StructureCol(ZoneJointContainerCol[Structure]): 6466 def __init__(self, structureCol: _api.StructureCol): 6467 self._Entity = structureCol 6468 self._CollectedClass = Structure 6469 6470 @property 6471 def StructureColList(self) -> tuple[Structure]: 6472 return tuple([Structure(structureCol) for structureCol in self._Entity]) 6473 6474 def Create(self, name: str = None) -> Structure: 6475 return Structure(self._Entity.Create(name)) 6476 6477 @overload 6478 def DeleteStructure(self, structure: Structure) -> bool: ... 6479 6480 @overload 6481 def DeleteStructure(self, name: str) -> bool: ... 6482 6483 @overload 6484 def DeleteStructure(self, id: int) -> bool: ... 6485 6486 @overload 6487 def Get(self, name: str) -> Structure: ... 6488 6489 @overload 6490 def Get(self, id: int) -> Structure: ... 6491 6492 def DeleteStructure(self, item1 = None) -> bool: 6493 if isinstance(item1, Structure): 6494 return self._Entity.DeleteStructure(item1._Entity) 6495 6496 if isinstance(item1, str): 6497 return self._Entity.DeleteStructure(item1) 6498 6499 if isinstance(item1, int): 6500 return self._Entity.DeleteStructure(item1) 6501 6502 return self._Entity.DeleteStructure(item1._Entity) 6503 6504 def Get(self, item1 = None) -> Structure: 6505 if isinstance(item1, str): 6506 return Structure(super().Get(item1)) 6507 6508 if isinstance(item1, int): 6509 return Structure(super().Get(item1)) 6510 6511 return Structure(self._Entity.Get(item1)) 6512 6513 def __getitem__(self, index: int): 6514 return self.StructureColList[index] 6515 6516 def __iter__(self): 6517 yield from self.StructureColList 6518 6519 def __len__(self): 6520 return len(self.StructureColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6492 def DeleteStructure(self, item1 = None) -> bool: 6493 if isinstance(item1, Structure): 6494 return self._Entity.DeleteStructure(item1._Entity) 6495 6496 if isinstance(item1, str): 6497 return self._Entity.DeleteStructure(item1) 6498 6499 if isinstance(item1, int): 6500 return self._Entity.DeleteStructure(item1) 6501 6502 return self._Entity.DeleteStructure(item1._Entity)
6523class Project: 6524 ''' 6525 Represents a HyperX project within a database. 6526 ''' 6527 def __init__(self, project: _api.Project): 6528 self._Entity = project 6529 6530 @property 6531 def HyperFea(self) -> HyperFea: 6532 result = self._Entity.HyperFea 6533 return HyperFea(result) if result is not None else None 6534 6535 @property 6536 def WorkingFolder(self) -> str: 6537 return self._Entity.WorkingFolder 6538 6539 @property 6540 def FemDataSet(self) -> FemDataSet: 6541 result = self._Entity.FemDataSet 6542 return FemDataSet(result) if result is not None else None 6543 6544 @property 6545 def Beams(self) -> ZoneCol: 6546 result = self._Entity.Beams 6547 return ZoneCol(result) if result is not None else None 6548 6549 @property 6550 def Id(self) -> int: 6551 return self._Entity.Id 6552 6553 @property 6554 def Joints(self) -> JointCol: 6555 result = self._Entity.Joints 6556 return JointCol(result) if result is not None else None 6557 6558 @property 6559 def Name(self) -> str: 6560 return self._Entity.Name 6561 6562 @property 6563 def Panels(self) -> ZoneCol: 6564 result = self._Entity.Panels 6565 return ZoneCol(result) if result is not None else None 6566 6567 @property 6568 def Rundecks(self) -> RundeckCol: 6569 result = self._Entity.Rundecks 6570 return RundeckCol(result) if result is not None else None 6571 6572 @property 6573 def Sets(self) -> SetCol: 6574 result = self._Entity.Sets 6575 return SetCol(result) if result is not None else None 6576 6577 @property 6578 def Structures(self) -> StructureCol: 6579 result = self._Entity.Structures 6580 return StructureCol(result) if result is not None else None 6581 6582 @property 6583 def Zones(self) -> ZoneCol: 6584 result = self._Entity.Zones 6585 return ZoneCol(result) if result is not None else None 6586 6587 @property 6588 def PanelSegments(self) -> PanelSegmentCol: 6589 result = self._Entity.PanelSegments 6590 return PanelSegmentCol(result) if result is not None else None 6591 6592 @property 6593 def SectionCuts(self) -> SectionCutCol: 6594 result = self._Entity.SectionCuts 6595 return SectionCutCol(result) if result is not None else None 6596 6597 @property 6598 def DesignLoads(self) -> DesignLoadCol: 6599 result = self._Entity.DesignLoads 6600 return DesignLoadCol(result) if result is not None else None 6601 6602 @property 6603 def DiscreteFieldTables(self) -> DiscreteFieldCol: 6604 result = self._Entity.DiscreteFieldTables 6605 return DiscreteFieldCol(result) if result is not None else None 6606 6607 @property 6608 def AnalysisProperties(self) -> AnalysisPropertyCol: 6609 result = self._Entity.AnalysisProperties 6610 return AnalysisPropertyCol(result) if result is not None else None 6611 6612 @property 6613 def DesignProperties(self) -> DesignPropertyCol: 6614 result = self._Entity.DesignProperties 6615 return DesignPropertyCol(result) if result is not None else None 6616 6617 @property 6618 def LoadProperties(self) -> LoadPropertyCol: 6619 result = self._Entity.LoadProperties 6620 return LoadPropertyCol(result) if result is not None else None 6621 6622 @property 6623 def FemFormat(self) -> types.ProjectModelFormat: 6624 return types.ProjectModelFormat[self._Entity.FemFormat.ToString()] 6625 6626 def Upload(self, uploadSetName: str, company: str, program: str, tags: list[str], notes: str, zoneIds: set[int], jointIds: set[int]) -> bool: 6627 tagsList = List[str]() 6628 if tags is not None: 6629 for thing in tags: 6630 if thing is not None: 6631 tagsList.Add(thing) 6632 zoneIdsSet = HashSet[int]() 6633 if zoneIds is not None: 6634 for thing in zoneIds: 6635 if thing is not None: 6636 zoneIdsSet.Add(thing) 6637 jointIdsSet = HashSet[int]() 6638 if jointIds is not None: 6639 for thing in jointIds: 6640 if thing is not None: 6641 jointIdsSet.Add(thing) 6642 return self._Entity.Upload(uploadSetName, company, program, tagsList, notes, zoneIdsSet, jointIdsSet) 6643 6644 def GetDashboardCompanies(self) -> list[str]: 6645 ''' 6646 This method fetches an array of Dashboard company names that are available to the user who is currently logged in. The URL and authentication token are taken from the last 6647 Dashboard login made through HyperX. 6648 ''' 6649 return list[str](self._Entity.GetDashboardCompanies()) 6650 6651 def GetDashboardPrograms(self, companyName: str) -> list[str]: 6652 return list[str](self._Entity.GetDashboardPrograms(companyName)) 6653 6654 def GetDashboardTags(self, companyName: str) -> list[str]: 6655 return list[str](self._Entity.GetDashboardTags(companyName)) 6656 6657 def GenerateSolverSizingInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6658 zonesSet = HashSet[int]() 6659 if zones is not None: 6660 for thing in zones: 6661 if thing is not None: 6662 zonesSet.Add(thing) 6663 sectionCutsSet = HashSet[int]() 6664 if sectionCuts is not None: 6665 for thing in sectionCuts: 6666 if thing is not None: 6667 sectionCutsSet.Add(thing) 6668 panelSegmentsSet = HashSet[int]() 6669 if panelSegments is not None: 6670 for thing in panelSegments: 6671 if thing is not None: 6672 panelSegmentsSet.Add(thing) 6673 return self._Entity.GenerateSolverSizingInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet) 6674 6675 def GenerateSolverAnalysisInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6676 zonesSet = HashSet[int]() 6677 if zones is not None: 6678 for thing in zones: 6679 if thing is not None: 6680 zonesSet.Add(thing) 6681 sectionCutsSet = HashSet[int]() 6682 if sectionCuts is not None: 6683 for thing in sectionCuts: 6684 if thing is not None: 6685 sectionCutsSet.Add(thing) 6686 panelSegmentsSet = HashSet[int]() 6687 if panelSegments is not None: 6688 for thing in panelSegments: 6689 if thing is not None: 6690 panelSegmentsSet.Add(thing) 6691 return self._Entity.GenerateSolverAnalysisInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet) 6692 6693 def FullRunSolverSizing(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6694 zonesSet = HashSet[int]() 6695 if zones is not None: 6696 for thing in zones: 6697 if thing is not None: 6698 zonesSet.Add(thing) 6699 sectionCutsSet = HashSet[int]() 6700 if sectionCuts is not None: 6701 for thing in sectionCuts: 6702 if thing is not None: 6703 sectionCutsSet.Add(thing) 6704 panelSegmentsSet = HashSet[int]() 6705 if panelSegments is not None: 6706 for thing in panelSegments: 6707 if thing is not None: 6708 panelSegmentsSet.Add(thing) 6709 return self._Entity.FullRunSolverSizing(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads) 6710 6711 def FullRunSolverAnalysis(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6712 zonesSet = HashSet[int]() 6713 if zones is not None: 6714 for thing in zones: 6715 if thing is not None: 6716 zonesSet.Add(thing) 6717 sectionCutsSet = HashSet[int]() 6718 if sectionCuts is not None: 6719 for thing in sectionCuts: 6720 if thing is not None: 6721 sectionCutsSet.Add(thing) 6722 panelSegmentsSet = HashSet[int]() 6723 if panelSegments is not None: 6724 for thing in panelSegments: 6725 if thing is not None: 6726 panelSegmentsSet.Add(thing) 6727 return self._Entity.FullRunSolverAnalysis(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads) 6728 6729 def RunSolver(self, inputFile: str, outputFile: str = None, nThreads: int = None) -> bool: 6730 return self._Entity.RunSolver(inputFile, outputFile, nThreads) 6731 6732 def Dispose(self) -> None: 6733 return self._Entity.Dispose() 6734 6735 def ImportFem(self) -> None: 6736 return self._Entity.ImportFem() 6737 6738 def ImportFeaResults(self, alwaysImport: bool = False) -> str: 6739 return self._Entity.ImportFeaResults(alwaysImport) 6740 6741 def SetFemFormat(self, femFormat: types.ProjectModelFormat) -> None: 6742 return self._Entity.SetFemFormat(_types.ProjectModelFormat(femFormat.value)) 6743 6744 def SetFemUnits(self, femForceId: DbForceUnit, femLengthId: DbLengthUnit, femMassId: DbMassUnit, femTemperatureId: DbTemperatureUnit) -> SetUnitsStatus: 6745 return SetUnitsStatus[self._Entity.SetFemUnits(_api.DbForceUnit(femForceId.value), _api.DbLengthUnit(femLengthId.value), _api.DbMassUnit(femMassId.value), _api.DbTemperatureUnit(femTemperatureId.value)).ToString()] 6746 6747 def SizeJoints(self, joints: list[Joint] = None) -> types.SimpleStatus: 6748 jointsList = List[_api.Joint]() 6749 if joints is not None: 6750 for thing in joints: 6751 if thing is not None: 6752 jointsList.Add(thing._Entity) 6753 return types.SimpleStatus(self._Entity.SizeJoints(joints if joints is None else jointsList)) 6754 6755 def GetJointsWithoutResults(self, joints: list[Joint]) -> set[int]: 6756 jointsList = List[_api.Joint]() 6757 if joints is not None: 6758 for thing in joints: 6759 if thing is not None: 6760 jointsList.Add(thing._Entity) 6761 return set[int](self._Entity.GetJointsWithoutResults(jointsList)) 6762 6763 @overload 6764 def AnalyzeZones(self, zones: list[Zone] = None) -> types.SimpleStatus: ... 6765 6766 @overload 6767 def AnalyzeZones(self, zoneIds: list[int]) -> types.SimpleStatus: ... 6768 6769 @overload 6770 def SizeZones(self, zones: list[Zone] = None) -> types.SimpleStatus: ... 6771 6772 @overload 6773 def SizeZones(self, zoneIds: list[int]) -> types.SimpleStatus: ... 6774 6775 def CreateNonFeaZone(self, category: types.FamilyCategory, name: str = None) -> Zone: 6776 result = self._Entity.CreateNonFeaZone(_types.FamilyCategory(category.value), name) 6777 thisClass = type(result).__name__ 6778 givenClass = Zone 6779 for subclass in Zone.__subclasses__(): 6780 if subclass.__name__ == thisClass: 6781 givenClass = subclass 6782 return givenClass(result) 6783 6784 def ReturnToUnusedFem(self, zoneNumbers: list[int] = None, jointIds: set[int] = None) -> None: 6785 zoneNumbersList = MakeCSharpIntList(zoneNumbers) 6786 jointIdsSet = HashSet[int]() 6787 if jointIds is not None: 6788 for thing in jointIds: 6789 if thing is not None: 6790 jointIdsSet.Add(thing) 6791 return self._Entity.ReturnToUnusedFem(zoneNumbers if zoneNumbers is None else zoneNumbersList, jointIds if jointIds is None else jointIdsSet) 6792 6793 def UnimportFemAsync(self) -> Task: 6794 return Task(self._Entity.UnimportFemAsync()) 6795 6796 def ExportFem(self, destinationFolder: str) -> None: 6797 return self._Entity.ExportFem(destinationFolder) 6798 6799 def ImportCad(self, filePath: str) -> None: 6800 return self._Entity.ImportCad(filePath) 6801 6802 @overload 6803 def ExportCad(self, filePath: str) -> None: ... 6804 6805 @overload 6806 def ExportCad(self, cadIds: tuple[int], filePath: str) -> None: ... 6807 6808 def RegeneratePfem(self) -> None: 6809 ''' 6810 Regenerates and displays the preview FEM. If running a script outside of the Script Runner, 6811 do not call this method 6812 ''' 6813 return self._Entity.RegeneratePfem() 6814 6815 def AnalyzeZones(self, item1 = None) -> types.SimpleStatus: 6816 if isinstance(item1, list) and item1 and isinstance(item1[0], Zone): 6817 zonesList = List[_api.Zone]() 6818 if item1 is not None: 6819 for thing in item1: 6820 if thing is not None: 6821 zonesList.Add(thing._Entity) 6822 return types.SimpleStatus(self._Entity.AnalyzeZones(item1 if item1 is None else zonesList)) 6823 6824 if isinstance(item1, list) and item1 and isinstance(item1[0], int): 6825 zoneIdsList = MakeCSharpIntList(item1) 6826 return types.SimpleStatus(self._Entity.AnalyzeZones(zoneIdsList)) 6827 6828 return types.SimpleStatus(self._Entity.AnalyzeZones(item1)) 6829 6830 def SizeZones(self, item1 = None) -> types.SimpleStatus: 6831 if isinstance(item1, list) and item1 and isinstance(item1[0], Zone): 6832 zonesList = List[_api.Zone]() 6833 if item1 is not None: 6834 for thing in item1: 6835 if thing is not None: 6836 zonesList.Add(thing._Entity) 6837 return types.SimpleStatus(self._Entity.SizeZones(item1 if item1 is None else zonesList)) 6838 6839 if isinstance(item1, list) and item1 and isinstance(item1[0], int): 6840 zoneIdsList = MakeCSharpIntList(item1) 6841 return types.SimpleStatus(self._Entity.SizeZones(zoneIdsList)) 6842 6843 return types.SimpleStatus(self._Entity.SizeZones(item1)) 6844 6845 def ExportCad(self, item1 = None, item2 = None) -> None: 6846 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, str): 6847 cadIdsList = MakeCSharpIntList(item1) 6848 cadIdsEnumerable = IEnumerable(cadIdsList) 6849 return self._Entity.ExportCad(cadIdsEnumerable, item2) 6850 6851 if isinstance(item1, str): 6852 return self._Entity.ExportCad(item1) 6853 6854 return self._Entity.ExportCad(item1, item2)
Represents a HyperX project within a database.
6626 def Upload(self, uploadSetName: str, company: str, program: str, tags: list[str], notes: str, zoneIds: set[int], jointIds: set[int]) -> bool: 6627 tagsList = List[str]() 6628 if tags is not None: 6629 for thing in tags: 6630 if thing is not None: 6631 tagsList.Add(thing) 6632 zoneIdsSet = HashSet[int]() 6633 if zoneIds is not None: 6634 for thing in zoneIds: 6635 if thing is not None: 6636 zoneIdsSet.Add(thing) 6637 jointIdsSet = HashSet[int]() 6638 if jointIds is not None: 6639 for thing in jointIds: 6640 if thing is not None: 6641 jointIdsSet.Add(thing) 6642 return self._Entity.Upload(uploadSetName, company, program, tagsList, notes, zoneIdsSet, jointIdsSet)
6644 def GetDashboardCompanies(self) -> list[str]: 6645 ''' 6646 This method fetches an array of Dashboard company names that are available to the user who is currently logged in. The URL and authentication token are taken from the last 6647 Dashboard login made through HyperX. 6648 ''' 6649 return list[str](self._Entity.GetDashboardCompanies())
This method fetches an array of Dashboard company names that are available to the user who is currently logged in. The URL and authentication token are taken from the last Dashboard login made through HyperX.
6657 def GenerateSolverSizingInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6658 zonesSet = HashSet[int]() 6659 if zones is not None: 6660 for thing in zones: 6661 if thing is not None: 6662 zonesSet.Add(thing) 6663 sectionCutsSet = HashSet[int]() 6664 if sectionCuts is not None: 6665 for thing in sectionCuts: 6666 if thing is not None: 6667 sectionCutsSet.Add(thing) 6668 panelSegmentsSet = HashSet[int]() 6669 if panelSegments is not None: 6670 for thing in panelSegments: 6671 if thing is not None: 6672 panelSegmentsSet.Add(thing) 6673 return self._Entity.GenerateSolverSizingInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet)
6675 def GenerateSolverAnalysisInputFile(self, inputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None) -> str: 6676 zonesSet = HashSet[int]() 6677 if zones is not None: 6678 for thing in zones: 6679 if thing is not None: 6680 zonesSet.Add(thing) 6681 sectionCutsSet = HashSet[int]() 6682 if sectionCuts is not None: 6683 for thing in sectionCuts: 6684 if thing is not None: 6685 sectionCutsSet.Add(thing) 6686 panelSegmentsSet = HashSet[int]() 6687 if panelSegments is not None: 6688 for thing in panelSegments: 6689 if thing is not None: 6690 panelSegmentsSet.Add(thing) 6691 return self._Entity.GenerateSolverAnalysisInputFile(inputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet)
6693 def FullRunSolverSizing(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6694 zonesSet = HashSet[int]() 6695 if zones is not None: 6696 for thing in zones: 6697 if thing is not None: 6698 zonesSet.Add(thing) 6699 sectionCutsSet = HashSet[int]() 6700 if sectionCuts is not None: 6701 for thing in sectionCuts: 6702 if thing is not None: 6703 sectionCutsSet.Add(thing) 6704 panelSegmentsSet = HashSet[int]() 6705 if panelSegments is not None: 6706 for thing in panelSegments: 6707 if thing is not None: 6708 panelSegmentsSet.Add(thing) 6709 return self._Entity.FullRunSolverSizing(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads)
6711 def FullRunSolverAnalysis(self, inputFile: str = None, outputFile: str = None, zones: set[int] = None, sectionCuts: set[int] = None, panelSegments: set[int] = None, nThreads: int = None) -> bool: 6712 zonesSet = HashSet[int]() 6713 if zones is not None: 6714 for thing in zones: 6715 if thing is not None: 6716 zonesSet.Add(thing) 6717 sectionCutsSet = HashSet[int]() 6718 if sectionCuts is not None: 6719 for thing in sectionCuts: 6720 if thing is not None: 6721 sectionCutsSet.Add(thing) 6722 panelSegmentsSet = HashSet[int]() 6723 if panelSegments is not None: 6724 for thing in panelSegments: 6725 if thing is not None: 6726 panelSegmentsSet.Add(thing) 6727 return self._Entity.FullRunSolverAnalysis(inputFile, outputFile, zones if zones is None else zonesSet, sectionCuts if sectionCuts is None else sectionCutsSet, panelSegments if panelSegments is None else panelSegmentsSet, nThreads)
6744 def SetFemUnits(self, femForceId: DbForceUnit, femLengthId: DbLengthUnit, femMassId: DbMassUnit, femTemperatureId: DbTemperatureUnit) -> SetUnitsStatus: 6745 return SetUnitsStatus[self._Entity.SetFemUnits(_api.DbForceUnit(femForceId.value), _api.DbLengthUnit(femLengthId.value), _api.DbMassUnit(femMassId.value), _api.DbTemperatureUnit(femTemperatureId.value)).ToString()]
6747 def SizeJoints(self, joints: list[Joint] = None) -> types.SimpleStatus: 6748 jointsList = List[_api.Joint]() 6749 if joints is not None: 6750 for thing in joints: 6751 if thing is not None: 6752 jointsList.Add(thing._Entity) 6753 return types.SimpleStatus(self._Entity.SizeJoints(joints if joints is None else jointsList))
6815 def AnalyzeZones(self, item1 = None) -> types.SimpleStatus: 6816 if isinstance(item1, list) and item1 and isinstance(item1[0], Zone): 6817 zonesList = List[_api.Zone]() 6818 if item1 is not None: 6819 for thing in item1: 6820 if thing is not None: 6821 zonesList.Add(thing._Entity) 6822 return types.SimpleStatus(self._Entity.AnalyzeZones(item1 if item1 is None else zonesList)) 6823 6824 if isinstance(item1, list) and item1 and isinstance(item1[0], int): 6825 zoneIdsList = MakeCSharpIntList(item1) 6826 return types.SimpleStatus(self._Entity.AnalyzeZones(zoneIdsList)) 6827 6828 return types.SimpleStatus(self._Entity.AnalyzeZones(item1))
6830 def SizeZones(self, item1 = None) -> types.SimpleStatus: 6831 if isinstance(item1, list) and item1 and isinstance(item1[0], Zone): 6832 zonesList = List[_api.Zone]() 6833 if item1 is not None: 6834 for thing in item1: 6835 if thing is not None: 6836 zonesList.Add(thing._Entity) 6837 return types.SimpleStatus(self._Entity.SizeZones(item1 if item1 is None else zonesList)) 6838 6839 if isinstance(item1, list) and item1 and isinstance(item1[0], int): 6840 zoneIdsList = MakeCSharpIntList(item1) 6841 return types.SimpleStatus(self._Entity.SizeZones(zoneIdsList)) 6842 6843 return types.SimpleStatus(self._Entity.SizeZones(item1))
6775 def CreateNonFeaZone(self, category: types.FamilyCategory, name: str = None) -> Zone: 6776 result = self._Entity.CreateNonFeaZone(_types.FamilyCategory(category.value), name) 6777 thisClass = type(result).__name__ 6778 givenClass = Zone 6779 for subclass in Zone.__subclasses__(): 6780 if subclass.__name__ == thisClass: 6781 givenClass = subclass 6782 return givenClass(result)
6784 def ReturnToUnusedFem(self, zoneNumbers: list[int] = None, jointIds: set[int] = None) -> None: 6785 zoneNumbersList = MakeCSharpIntList(zoneNumbers) 6786 jointIdsSet = HashSet[int]() 6787 if jointIds is not None: 6788 for thing in jointIds: 6789 if thing is not None: 6790 jointIdsSet.Add(thing) 6791 return self._Entity.ReturnToUnusedFem(zoneNumbers if zoneNumbers is None else zoneNumbersList, jointIds if jointIds is None else jointIdsSet)
6845 def ExportCad(self, item1 = None, item2 = None) -> None: 6846 if isinstance(item1, tuple) and item1 and isinstance(item1[0], int) and isinstance(item2, str): 6847 cadIdsList = MakeCSharpIntList(item1) 6848 cadIdsEnumerable = IEnumerable(cadIdsList) 6849 return self._Entity.ExportCad(cadIdsEnumerable, item2) 6850 6851 if isinstance(item1, str): 6852 return self._Entity.ExportCad(item1) 6853 6854 return self._Entity.ExportCad(item1, item2)
6808 def RegeneratePfem(self) -> None: 6809 ''' 6810 Regenerates and displays the preview FEM. If running a script outside of the Script Runner, 6811 do not call this method 6812 ''' 6813 return self._Entity.RegeneratePfem()
Regenerates and displays the preview FEM. If running a script outside of the Script Runner, do not call this method
6857class ProjectInfo(IdNameEntityRenameable): 6858 def __init__(self, projectInfo: _api.ProjectInfo): 6859 self._Entity = projectInfo
Represents an entity with an ID and Name.
Inherited Members
6862class FailureModeCategoryCol(IdNameEntityCol[FailureModeCategory]): 6863 def __init__(self, failureModeCategoryCol: _api.FailureModeCategoryCol): 6864 self._Entity = failureModeCategoryCol 6865 self._CollectedClass = FailureModeCategory 6866 6867 @property 6868 def FailureModeCategoryColList(self) -> tuple[FailureModeCategory]: 6869 return tuple([FailureModeCategory(failureModeCategoryCol) for failureModeCategoryCol in self._Entity]) 6870 6871 @overload 6872 def Get(self, name: str) -> FailureModeCategory: ... 6873 6874 @overload 6875 def Get(self, id: int) -> FailureModeCategory: ... 6876 6877 def Get(self, item1 = None) -> FailureModeCategory: 6878 if isinstance(item1, str): 6879 return FailureModeCategory(super().Get(item1)) 6880 6881 if isinstance(item1, int): 6882 return FailureModeCategory(super().Get(item1)) 6883 6884 return FailureModeCategory(self._Entity.Get(item1)) 6885 6886 def __getitem__(self, index: int): 6887 return self.FailureModeCategoryColList[index] 6888 6889 def __iter__(self): 6890 yield from self.FailureModeCategoryColList 6891 6892 def __len__(self): 6893 return len(self.FailureModeCategoryColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
6896class FoamCol(Generic[T]): 6897 def __init__(self, foamCol: _api.FoamCol): 6898 self._Entity = foamCol 6899 6900 @property 6901 def FoamColList(self) -> tuple[Foam]: 6902 return tuple([Foam(foamCol) for foamCol in self._Entity]) 6903 6904 def Count(self) -> int: 6905 return self._Entity.Count() 6906 6907 def Get(self, materialName: str) -> Foam: 6908 return Foam(self._Entity.Get(materialName)) 6909 6910 def Contains(self, materialName: str) -> bool: 6911 return self._Entity.Contains(materialName) 6912 6913 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Foam: 6914 return Foam(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6915 6916 def Copy(self, fmToCopyName: str, newMaterialName: str = None, femId: int = None) -> Foam: 6917 return Foam(self._Entity.Copy(fmToCopyName, newMaterialName, femId)) 6918 6919 def Delete(self, materialName: str) -> bool: 6920 return self._Entity.Delete(materialName) 6921 6922 def __getitem__(self, index: int): 6923 return self.FoamColList[index] 6924 6925 def __iter__(self): 6926 yield from self.FoamColList 6927 6928 def __len__(self): 6929 return len(self.FoamColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6932class HoneycombCol(Generic[T]): 6933 def __init__(self, honeycombCol: _api.HoneycombCol): 6934 self._Entity = honeycombCol 6935 6936 @property 6937 def HoneycombColList(self) -> tuple[Honeycomb]: 6938 return tuple([Honeycomb(honeycombCol) for honeycombCol in self._Entity]) 6939 6940 def Count(self) -> int: 6941 return self._Entity.Count() 6942 6943 def Get(self, materialName: str) -> Honeycomb: 6944 return Honeycomb(self._Entity.Get(materialName)) 6945 6946 def Contains(self, materialName: str) -> bool: 6947 return self._Entity.Contains(materialName) 6948 6949 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Honeycomb: 6950 return Honeycomb(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6951 6952 def Copy(self, honeyToCopyName: str, newMaterialName: str = None, femId: int = None) -> Honeycomb: 6953 return Honeycomb(self._Entity.Copy(honeyToCopyName, newMaterialName, femId)) 6954 6955 def Delete(self, materialName: str) -> bool: 6956 return self._Entity.Delete(materialName) 6957 6958 def __getitem__(self, index: int): 6959 return self.HoneycombColList[index] 6960 6961 def __iter__(self): 6962 yield from self.HoneycombColList 6963 6964 def __len__(self): 6965 return len(self.HoneycombColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
6968class IsotropicCol(Generic[T]): 6969 def __init__(self, isotropicCol: _api.IsotropicCol): 6970 self._Entity = isotropicCol 6971 6972 @property 6973 def IsotropicColList(self) -> tuple[Isotropic]: 6974 return tuple([Isotropic(isotropicCol) for isotropicCol in self._Entity]) 6975 6976 def Count(self) -> int: 6977 return self._Entity.Count() 6978 6979 def Get(self, materialName: str) -> Isotropic: 6980 return Isotropic(self._Entity.Get(materialName)) 6981 6982 def Contains(self, materialName: str) -> bool: 6983 return self._Entity.Contains(materialName) 6984 6985 def Create(self, materialFamilyName: str, density: float, newMaterialName: str = None, femId: int = None) -> Isotropic: 6986 return Isotropic(self._Entity.Create(materialFamilyName, density, newMaterialName, femId)) 6987 6988 def Copy(self, isoToCopyName: str, newMaterialName: str = None, femId: int = None) -> Isotropic: 6989 return Isotropic(self._Entity.Copy(isoToCopyName, newMaterialName, femId)) 6990 6991 def Delete(self, materialName: str) -> bool: 6992 return self._Entity.Delete(materialName) 6993 6994 def __getitem__(self, index: int): 6995 return self.IsotropicColList[index] 6996 6997 def __iter__(self): 6998 yield from self.IsotropicColList 6999 7000 def __len__(self): 7001 return len(self.IsotropicColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
7004class LaminateFamilyCol(IdNameEntityCol[LaminateFamily]): 7005 def __init__(self, laminateFamilyCol: _api.LaminateFamilyCol): 7006 self._Entity = laminateFamilyCol 7007 self._CollectedClass = LaminateFamily 7008 7009 @property 7010 def LaminateFamilyColList(self) -> tuple[LaminateFamily]: 7011 return tuple([LaminateFamily(laminateFamilyCol) for laminateFamilyCol in self._Entity]) 7012 7013 @overload 7014 def Get(self, name: str) -> LaminateFamily: ... 7015 7016 @overload 7017 def Get(self, id: int) -> LaminateFamily: ... 7018 7019 def Get(self, item1 = None) -> LaminateFamily: 7020 if isinstance(item1, str): 7021 return LaminateFamily(super().Get(item1)) 7022 7023 if isinstance(item1, int): 7024 return LaminateFamily(super().Get(item1)) 7025 7026 return LaminateFamily(self._Entity.Get(item1)) 7027 7028 def __getitem__(self, index: int): 7029 return self.LaminateFamilyColList[index] 7030 7031 def __iter__(self): 7032 yield from self.LaminateFamilyColList 7033 7034 def __len__(self): 7035 return len(self.LaminateFamilyColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7038class LaminateCol(Generic[T]): 7039 def __init__(self, laminateCol: _api.LaminateCol): 7040 self._Entity = laminateCol 7041 7042 @property 7043 def LaminateColList(self) -> tuple[Laminate]: 7044 return tuple([Laminate(laminateCol) for laminateCol in self._Entity]) 7045 7046 def Count(self) -> int: 7047 return self._Entity.Count() 7048 7049 def Get(self, laminateName: str) -> LaminateBase: 7050 result = self._Entity.Get(laminateName) 7051 thisClass = type(result).__name__ 7052 givenClass = LaminateBase 7053 for subclass in LaminateBase.__subclasses__(): 7054 if subclass.__name__ == thisClass: 7055 givenClass = subclass 7056 return givenClass(result) 7057 7058 def Contains(self, laminateName: str) -> bool: 7059 return self._Entity.Contains(laminateName) 7060 7061 def CreateLaminate(self, materialFamily: str, laminateName: str = None) -> Laminate: 7062 return Laminate(self._Entity.CreateLaminate(materialFamily, laminateName)) 7063 7064 def CreateStiffenerLaminate(self, materialFamily: str, stiffenerProfile: types.StiffenerProfile, laminateName: str = None) -> StiffenerLaminate: 7065 return StiffenerLaminate(self._Entity.CreateStiffenerLaminate(materialFamily, _types.StiffenerProfile(stiffenerProfile.value), laminateName)) 7066 7067 def Copy(self, laminateToCopyName: str, newLaminateName: str = None) -> LaminateBase: 7068 result = self._Entity.Copy(laminateToCopyName, newLaminateName) 7069 thisClass = type(result).__name__ 7070 givenClass = LaminateBase 7071 for subclass in LaminateBase.__subclasses__(): 7072 if subclass.__name__ == thisClass: 7073 givenClass = subclass 7074 return givenClass(result) 7075 7076 def Delete(self, name: str) -> bool: 7077 return self._Entity.Delete(name) 7078 7079 def GetLaminate(self, name: str) -> Laminate: 7080 return Laminate(self._Entity.GetLaminate(name)) 7081 7082 def GetStiffenerLaminate(self, name: str) -> StiffenerLaminate: 7083 return StiffenerLaminate(self._Entity.GetStiffenerLaminate(name)) 7084 7085 def __getitem__(self, index: int): 7086 return self.LaminateColList[index] 7087 7088 def __iter__(self): 7089 yield from self.LaminateColList 7090 7091 def __len__(self): 7092 return len(self.LaminateColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
7049 def Get(self, laminateName: str) -> LaminateBase: 7050 result = self._Entity.Get(laminateName) 7051 thisClass = type(result).__name__ 7052 givenClass = LaminateBase 7053 for subclass in LaminateBase.__subclasses__(): 7054 if subclass.__name__ == thisClass: 7055 givenClass = subclass 7056 return givenClass(result)
7067 def Copy(self, laminateToCopyName: str, newLaminateName: str = None) -> LaminateBase: 7068 result = self._Entity.Copy(laminateToCopyName, newLaminateName) 7069 thisClass = type(result).__name__ 7070 givenClass = LaminateBase 7071 for subclass in LaminateBase.__subclasses__(): 7072 if subclass.__name__ == thisClass: 7073 givenClass = subclass 7074 return givenClass(result)
7095class OrthotropicCol(Generic[T]): 7096 def __init__(self, orthotropicCol: _api.OrthotropicCol): 7097 self._Entity = orthotropicCol 7098 7099 @property 7100 def OrthotropicColList(self) -> tuple[Orthotropic]: 7101 return tuple([Orthotropic(orthotropicCol) for orthotropicCol in self._Entity]) 7102 7103 def Count(self) -> int: 7104 return self._Entity.Count() 7105 7106 def Get(self, materialName: str) -> Orthotropic: 7107 return Orthotropic(self._Entity.Get(materialName)) 7108 7109 def Contains(self, materialName: str) -> bool: 7110 return self._Entity.Contains(materialName) 7111 7112 def Create(self, materialFamilyName: str, thickness: float, density: float, newMaterialName: str = None, femId: int = None) -> Orthotropic: 7113 return Orthotropic(self._Entity.Create(materialFamilyName, thickness, density, newMaterialName, femId)) 7114 7115 def Copy(self, orthoToCopyName: str, newMaterialName: str = None, femId: int = None) -> Orthotropic: 7116 return Orthotropic(self._Entity.Copy(orthoToCopyName, newMaterialName, femId)) 7117 7118 def Delete(self, materialName: str) -> bool: 7119 return self._Entity.Delete(materialName) 7120 7121 def __getitem__(self, index: int): 7122 return self.OrthotropicColList[index] 7123 7124 def __iter__(self): 7125 yield from self.OrthotropicColList 7126 7127 def __len__(self): 7128 return len(self.OrthotropicColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
7131class PluginPackageCol(IdNameEntityCol[PluginPackage]): 7132 def __init__(self, pluginPackageCol: _api.PluginPackageCol): 7133 self._Entity = pluginPackageCol 7134 self._CollectedClass = PluginPackage 7135 7136 @property 7137 def PluginPackageColList(self) -> tuple[PluginPackage]: 7138 return tuple([PluginPackage(pluginPackageCol) for pluginPackageCol in self._Entity]) 7139 7140 def AddPluginPackage(self, path: str) -> PluginPackage: 7141 return PluginPackage(self._Entity.AddPluginPackage(path)) 7142 7143 @overload 7144 def RemovePluginPackage(self, name: str) -> bool: ... 7145 7146 @overload 7147 def RemovePluginPackage(self, id: int) -> bool: ... 7148 7149 def ClearAllPluginPackages(self) -> None: 7150 ''' 7151 Clears all packages out of the database 7152 ''' 7153 return self._Entity.ClearAllPluginPackages() 7154 7155 def GetPluginPackages(self) -> list[PluginPackage]: 7156 ''' 7157 Gets a list of package info 7158 Includes name, id, file path, version, description, and modification date 7159 ''' 7160 return [PluginPackage(pluginPackage) for pluginPackage in self._Entity.GetPluginPackages()] 7161 7162 @overload 7163 def Get(self, name: str) -> PluginPackage: ... 7164 7165 @overload 7166 def Get(self, id: int) -> PluginPackage: ... 7167 7168 def RemovePluginPackage(self, item1 = None) -> bool: 7169 if isinstance(item1, str): 7170 return self._Entity.RemovePluginPackage(item1) 7171 7172 if isinstance(item1, int): 7173 return self._Entity.RemovePluginPackage(item1) 7174 7175 return self._Entity.RemovePluginPackage(item1) 7176 7177 def Get(self, item1 = None) -> PluginPackage: 7178 if isinstance(item1, str): 7179 return PluginPackage(super().Get(item1)) 7180 7181 if isinstance(item1, int): 7182 return PluginPackage(super().Get(item1)) 7183 7184 return PluginPackage(self._Entity.Get(item1)) 7185 7186 def __getitem__(self, index: int): 7187 return self.PluginPackageColList[index] 7188 7189 def __iter__(self): 7190 yield from self.PluginPackageColList 7191 7192 def __len__(self): 7193 return len(self.PluginPackageColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
7149 def ClearAllPluginPackages(self) -> None: 7150 ''' 7151 Clears all packages out of the database 7152 ''' 7153 return self._Entity.ClearAllPluginPackages()
Clears all packages out of the database
7155 def GetPluginPackages(self) -> list[PluginPackage]: 7156 ''' 7157 Gets a list of package info 7158 Includes name, id, file path, version, description, and modification date 7159 ''' 7160 return [PluginPackage(pluginPackage) for pluginPackage in self._Entity.GetPluginPackages()]
Gets a list of package info Includes name, id, file path, version, description, and modification date
Inherited Members
7196class ProjectInfoCol(IdNameEntityCol[ProjectInfo]): 7197 def __init__(self, projectInfoCol: _api.ProjectInfoCol): 7198 self._Entity = projectInfoCol 7199 self._CollectedClass = ProjectInfo 7200 7201 @property 7202 def ProjectInfoColList(self) -> tuple[ProjectInfo]: 7203 return tuple([ProjectInfo(projectInfoCol) for projectInfoCol in self._Entity]) 7204 7205 @overload 7206 def Get(self, name: str) -> ProjectInfo: ... 7207 7208 @overload 7209 def Get(self, id: int) -> ProjectInfo: ... 7210 7211 def Get(self, item1 = None) -> ProjectInfo: 7212 if isinstance(item1, str): 7213 return ProjectInfo(super().Get(item1)) 7214 7215 if isinstance(item1, int): 7216 return ProjectInfo(super().Get(item1)) 7217 7218 return ProjectInfo(self._Entity.Get(item1)) 7219 7220 def __getitem__(self, index: int): 7221 return self.ProjectInfoColList[index] 7222 7223 def __iter__(self): 7224 yield from self.ProjectInfoColList 7225 7226 def __len__(self): 7227 return len(self.ProjectInfoColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7230class Application: 7231 ''' 7232 HyperX scripting application. 7233 This API is not guaranteed to be thread-safe. 7234 Calls into a single application instance or its descendents are not safe to be called concurrently. 7235 7236 However, it is safe enough for integration testing to have multiple 7237 application instances with a single process. 7238 ''' 7239 def __init__(self, application: _api.Application): 7240 self._Entity = application 7241 7242 @property 7243 def UnitSystem(self) -> UnitSystem: 7244 ''' 7245 Unit system specified when starting a scripting Application. 7246 ''' 7247 result = self._Entity.UnitSystem 7248 return UnitSystem(result) if result is not None else None 7249 7250 @property 7251 def CompilationDate(self) -> str: 7252 return self._Entity.CompilationDate 7253 7254 @property 7255 def DatabasePath(self) -> str: 7256 return self._Entity.DatabasePath 7257 7258 @property 7259 def ActiveProject(self) -> Project: 7260 ''' 7261 Represents a HyperX project within a database. 7262 ''' 7263 result = self._Entity.ActiveProject 7264 return Project(result) if result is not None else None 7265 7266 @property 7267 def UiRunnerMode(self) -> bool: 7268 return self._Entity.UiRunnerMode 7269 7270 @property 7271 def Version(self) -> str: 7272 return self._Entity.Version 7273 7274 @property 7275 def FailureModeCategories(self) -> FailureModeCategoryCol: 7276 result = self._Entity.FailureModeCategories 7277 return FailureModeCategoryCol(result) if result is not None else None 7278 7279 @property 7280 def FailureModes(self) -> FailureModeCol: 7281 result = self._Entity.FailureModes 7282 return FailureModeCol(result) if result is not None else None 7283 7284 @property 7285 def Packages(self) -> PluginPackageCol: 7286 result = self._Entity.Packages 7287 return PluginPackageCol(result) if result is not None else None 7288 7289 @property 7290 def Foams(self) -> FoamCol: 7291 ''' 7292 Contains a set of all foam materials in a database. 7293 ''' 7294 result = self._Entity.Foams 7295 return FoamCol(result) if result is not None else None 7296 7297 @property 7298 def Honeycombs(self) -> HoneycombCol: 7299 ''' 7300 Contains a set of all honeycomb materials in a database. 7301 ''' 7302 result = self._Entity.Honeycombs 7303 return HoneycombCol(result) if result is not None else None 7304 7305 @property 7306 def Isotropics(self) -> IsotropicCol: 7307 ''' 7308 Contains a set of all isotropic materials in a database. 7309 ''' 7310 result = self._Entity.Isotropics 7311 return IsotropicCol(result) if result is not None else None 7312 7313 @property 7314 def Laminates(self) -> LaminateCol: 7315 result = self._Entity.Laminates 7316 return LaminateCol(result) if result is not None else None 7317 7318 @property 7319 def LaminateFamilies(self) -> LaminateFamilyCol: 7320 result = self._Entity.LaminateFamilies 7321 return LaminateFamilyCol(result) if result is not None else None 7322 7323 @property 7324 def AnalysisProperties(self) -> AnalysisPropertyCol: 7325 result = self._Entity.AnalysisProperties 7326 return AnalysisPropertyCol(result) if result is not None else None 7327 7328 @property 7329 def DesignProperties(self) -> DesignPropertyCol: 7330 result = self._Entity.DesignProperties 7331 return DesignPropertyCol(result) if result is not None else None 7332 7333 @property 7334 def LoadProperties(self) -> LoadPropertyCol: 7335 result = self._Entity.LoadProperties 7336 return LoadPropertyCol(result) if result is not None else None 7337 7338 @property 7339 def Orthotropics(self) -> OrthotropicCol: 7340 ''' 7341 Contains a set of all orthotropic materials in a database. 7342 ''' 7343 result = self._Entity.Orthotropics 7344 return OrthotropicCol(result) if result is not None else None 7345 7346 @property 7347 def ProjectInfos(self) -> ProjectInfoCol: 7348 ''' 7349 Contains a set of all projects in a database. 7350 ''' 7351 result = self._Entity.ProjectInfos 7352 return ProjectInfoCol(result) if result is not None else None 7353 7354 @property 7355 def UserName(self) -> str: 7356 return self._Entity.UserName 7357 7358 @UserName.setter 7359 def UserName(self, value: str) -> None: 7360 self._Entity.UserName = value 7361 7362 def CloseDatabase(self, delay: int = 0) -> None: 7363 return self._Entity.CloseDatabase(delay) 7364 7365 def CopyProject(self, projectId: int, newName: str = None, copyDesignProperties: bool = True, copyAnalysisProperties: bool = True, copyLoadProperties: bool = True, copyWorkingFolder: bool = True) -> ProjectInfo: 7366 return ProjectInfo(self._Entity.CopyProject(projectId, newName, copyDesignProperties, copyAnalysisProperties, copyLoadProperties, copyWorkingFolder)) 7367 7368 def CreateDatabaseFromTemplate(self, templateName: str, newPath: str) -> None: 7369 return self._Entity.CreateDatabaseFromTemplate(templateName, newPath) 7370 7371 def CreateProject(self, projectName: str = None) -> ProjectInfo: 7372 return ProjectInfo(self._Entity.CreateProject(projectName)) 7373 7374 def DeleteProject(self, projectName: str) -> ProjectDeletionStatus: 7375 return ProjectDeletionStatus[self._Entity.DeleteProject(projectName).ToString()] 7376 7377 def Dispose(self) -> None: 7378 ''' 7379 Dispose of the application. Should be explicitly called after the application 7380 is no longer needed unless the application is wrapped with a using clause. 7381 ''' 7382 return self._Entity.Dispose() 7383 7384 def GetAnalyses(self) -> dict[int, AnalysisDefinition]: 7385 ''' 7386 Get all Analysis Definitions in the database. 7387 ''' 7388 return dict[int, AnalysisDefinition](self._Entity.GetAnalyses()) 7389 7390 def Login(self, userName: str, password: str = "") -> None: 7391 return self._Entity.Login(userName, password) 7392 7393 def Migrate(self, databasePath: str) -> str: 7394 return self._Entity.Migrate(databasePath) 7395 7396 def CheckDatabaseIsUpToDate(self, databasePath: str) -> bool: 7397 return self._Entity.CheckDatabaseIsUpToDate(databasePath) 7398 7399 def OpenDatabase(self, databasePath: str) -> None: 7400 return self._Entity.OpenDatabase(databasePath) 7401 7402 def SelectProject(self, projectName: str) -> Project: 7403 return Project(self._Entity.SelectProject(projectName))
HyperX scripting application. This API is not guaranteed to be thread-safe. Calls into a single application instance or its descendents are not safe to be called concurrently.
However, it is safe enough for integration testing to have multiple
application instances with a single process.
7242 @property 7243 def UnitSystem(self) -> UnitSystem: 7244 ''' 7245 Unit system specified when starting a scripting Application. 7246 ''' 7247 result = self._Entity.UnitSystem 7248 return UnitSystem(result) if result is not None else None
Unit system specified when starting a scripting Application.
7258 @property 7259 def ActiveProject(self) -> Project: 7260 ''' 7261 Represents a HyperX project within a database. 7262 ''' 7263 result = self._Entity.ActiveProject 7264 return Project(result) if result is not None else None
Represents a HyperX project within a database.
7289 @property 7290 def Foams(self) -> FoamCol: 7291 ''' 7292 Contains a set of all foam materials in a database. 7293 ''' 7294 result = self._Entity.Foams 7295 return FoamCol(result) if result is not None else None
Contains a set of all foam materials in a database.
7297 @property 7298 def Honeycombs(self) -> HoneycombCol: 7299 ''' 7300 Contains a set of all honeycomb materials in a database. 7301 ''' 7302 result = self._Entity.Honeycombs 7303 return HoneycombCol(result) if result is not None else None
Contains a set of all honeycomb materials in a database.
7305 @property 7306 def Isotropics(self) -> IsotropicCol: 7307 ''' 7308 Contains a set of all isotropic materials in a database. 7309 ''' 7310 result = self._Entity.Isotropics 7311 return IsotropicCol(result) if result is not None else None
Contains a set of all isotropic materials in a database.
7338 @property 7339 def Orthotropics(self) -> OrthotropicCol: 7340 ''' 7341 Contains a set of all orthotropic materials in a database. 7342 ''' 7343 result = self._Entity.Orthotropics 7344 return OrthotropicCol(result) if result is not None else None
Contains a set of all orthotropic materials in a database.
7346 @property 7347 def ProjectInfos(self) -> ProjectInfoCol: 7348 ''' 7349 Contains a set of all projects in a database. 7350 ''' 7351 result = self._Entity.ProjectInfos 7352 return ProjectInfoCol(result) if result is not None else None
Contains a set of all projects in a database.
7365 def CopyProject(self, projectId: int, newName: str = None, copyDesignProperties: bool = True, copyAnalysisProperties: bool = True, copyLoadProperties: bool = True, copyWorkingFolder: bool = True) -> ProjectInfo: 7366 return ProjectInfo(self._Entity.CopyProject(projectId, newName, copyDesignProperties, copyAnalysisProperties, copyLoadProperties, copyWorkingFolder))
7377 def Dispose(self) -> None: 7378 ''' 7379 Dispose of the application. Should be explicitly called after the application 7380 is no longer needed unless the application is wrapped with a using clause. 7381 ''' 7382 return self._Entity.Dispose()
Dispose of the application. Should be explicitly called after the application is no longer needed unless the application is wrapped with a using clause.
7384 def GetAnalyses(self) -> dict[int, AnalysisDefinition]: 7385 ''' 7386 Get all Analysis Definitions in the database. 7387 ''' 7388 return dict[int, AnalysisDefinition](self._Entity.GetAnalyses())
Get all Analysis Definitions in the database.
7406class JointDesignProperty(DesignProperty): 7407 def __init__(self, jointDesignProperty: _api.JointDesignProperty): 7408 self._Entity = jointDesignProperty
Represents an entity with an ID and Name.
Inherited Members
7411class SizingMaterial(IdEntity): 7412 def __init__(self, sizingMaterial: _api.SizingMaterial): 7413 self._Entity = sizingMaterial 7414 7415 @property 7416 def MaterialId(self) -> int: 7417 return self._Entity.MaterialId 7418 7419 @property 7420 def MaterialType(self) -> types.MaterialType: 7421 ''' 7422 Represents a material's type. 7423 ''' 7424 return types.MaterialType[self._Entity.MaterialType.ToString()]
Represents an entity with an ID.
7427class SizingMaterialCol(IdEntityCol[SizingMaterial]): 7428 def __init__(self, sizingMaterialCol: _api.SizingMaterialCol): 7429 self._Entity = sizingMaterialCol 7430 self._CollectedClass = SizingMaterial 7431 7432 @property 7433 def SizingMaterialColList(self) -> tuple[SizingMaterial]: 7434 return tuple([SizingMaterial(sizingMaterialCol) for sizingMaterialCol in self._Entity]) 7435 7436 @overload 7437 def Get(self, name: str) -> SizingMaterial: ... 7438 7439 @overload 7440 def Contains(self, name: str) -> bool: ... 7441 7442 @overload 7443 def AddSizingMaterial(self, materialId: int) -> bool: ... 7444 7445 @overload 7446 def AddSizingMaterial(self, name: str) -> bool: ... 7447 7448 @overload 7449 def RemoveSizingMaterial(self, materialId: int) -> bool: ... 7450 7451 @overload 7452 def RemoveSizingMaterial(self, name: str) -> bool: ... 7453 7454 @overload 7455 def Contains(self, id: int) -> bool: ... 7456 7457 @overload 7458 def Get(self, id: int) -> SizingMaterial: ... 7459 7460 def Get(self, item1 = None) -> SizingMaterial: 7461 if isinstance(item1, str): 7462 return SizingMaterial(self._Entity.Get(item1)) 7463 7464 if isinstance(item1, int): 7465 return SizingMaterial(super().Get(item1)) 7466 7467 return SizingMaterial(self._Entity.Get(item1)) 7468 7469 def Contains(self, item1 = None) -> bool: 7470 if isinstance(item1, str): 7471 return self._Entity.Contains(item1) 7472 7473 if isinstance(item1, int): 7474 return bool(super().Contains(item1)) 7475 7476 return self._Entity.Contains(item1) 7477 7478 def AddSizingMaterial(self, item1 = None) -> bool: 7479 if isinstance(item1, int): 7480 return self._Entity.AddSizingMaterial(item1) 7481 7482 if isinstance(item1, str): 7483 return self._Entity.AddSizingMaterial(item1) 7484 7485 return self._Entity.AddSizingMaterial(item1) 7486 7487 def RemoveSizingMaterial(self, item1 = None) -> bool: 7488 if isinstance(item1, int): 7489 return self._Entity.RemoveSizingMaterial(item1) 7490 7491 if isinstance(item1, str): 7492 return self._Entity.RemoveSizingMaterial(item1) 7493 7494 return self._Entity.RemoveSizingMaterial(item1) 7495 7496 def __getitem__(self, index: int): 7497 return self.SizingMaterialColList[index] 7498 7499 def __iter__(self): 7500 yield from self.SizingMaterialColList 7501 7502 def __len__(self): 7503 return len(self.SizingMaterialColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7506class ZoneOverride(IdEntity): 7507 def __init__(self, zoneOverride: _api.ZoneOverride): 7508 self._Entity = zoneOverride 7509 7510 @property 7511 def AllowMaterials(self) -> bool: 7512 return self._Entity.AllowMaterials 7513 7514 @property 7515 def ProjectId(self) -> int: 7516 return self._Entity.ProjectId 7517 7518 @property 7519 def DesignId(self) -> int: 7520 return self._Entity.DesignId 7521 7522 @property 7523 def FamilyId(self) -> types.BeamPanelFamily: 7524 return types.BeamPanelFamily[self._Entity.FamilyId.ToString()] 7525 7526 @property 7527 def ConceptId(self) -> int: 7528 return self._Entity.ConceptId 7529 7530 @property 7531 def VariableId(self) -> int: 7532 return self._Entity.VariableId 7533 7534 @property 7535 def MinBound(self) -> float: 7536 return self._Entity.MinBound 7537 7538 @property 7539 def MaxBound(self) -> float: 7540 return self._Entity.MaxBound 7541 7542 @property 7543 def StepSize(self) -> float: 7544 return self._Entity.StepSize 7545 7546 @property 7547 def MinPlies(self) -> int: 7548 return self._Entity.MinPlies 7549 7550 @property 7551 def MaxPlies(self) -> int: 7552 return self._Entity.MaxPlies 7553 7554 @property 7555 def PlyStepSize(self) -> int: 7556 return self._Entity.PlyStepSize 7557 7558 @property 7559 def InputMode(self) -> types.VariableInputMode: 7560 return types.VariableInputMode[self._Entity.InputMode.ToString()] 7561 7562 @property 7563 def SizingMaterials(self) -> SizingMaterialCol: 7564 result = self._Entity.SizingMaterials 7565 return SizingMaterialCol(result) if result is not None else None 7566 7567 @property 7568 def AnalysisValue(self) -> float: 7569 return self._Entity.AnalysisValue 7570 7571 @property 7572 def AnalysisMaterial(self) -> str: 7573 return self._Entity.AnalysisMaterial 7574 7575 @property 7576 def AnalysisMaterialType(self) -> types.MaterialType: 7577 return types.MaterialType[self._Entity.AnalysisMaterialType.ToString()] 7578 7579 @MinBound.setter 7580 def MinBound(self, value: float) -> None: 7581 self._Entity.MinBound = value 7582 7583 @MaxBound.setter 7584 def MaxBound(self, value: float) -> None: 7585 self._Entity.MaxBound = value 7586 7587 @StepSize.setter 7588 def StepSize(self, value: float) -> None: 7589 self._Entity.StepSize = value 7590 7591 @MinPlies.setter 7592 def MinPlies(self, value: int) -> None: 7593 self._Entity.MinPlies = value 7594 7595 @MaxPlies.setter 7596 def MaxPlies(self, value: int) -> None: 7597 self._Entity.MaxPlies = value 7598 7599 @PlyStepSize.setter 7600 def PlyStepSize(self, value: int) -> None: 7601 self._Entity.PlyStepSize = value 7602 7603 @AnalysisValue.setter 7604 def AnalysisValue(self, value: float) -> None: 7605 self._Entity.AnalysisValue = value 7606 7607 @AnalysisMaterial.setter 7608 def AnalysisMaterial(self, value: str) -> None: 7609 self._Entity.AnalysisMaterial = value
Represents an entity with an ID.
7612class ToolingConstraint(IdNameEntity): 7613 ''' 7614 Tooling constraints are a feature of Design Properties for Zones. 7615 ''' 7616 def __init__(self, toolingConstraint: _api.ToolingConstraint): 7617 self._Entity = toolingConstraint 7618 7619 @property 7620 def ConstraintMax(self) -> float: 7621 return self._Entity.ConstraintMax 7622 7623 @property 7624 def ConstraintMin(self) -> float: 7625 return self._Entity.ConstraintMin 7626 7627 @property 7628 def ConstraintValue(self) -> float: 7629 return self._Entity.ConstraintValue 7630 7631 @property 7632 def ToolingSelectionType(self) -> types.ToolingSelectionType: 7633 ''' 7634 Defines which selection a given tooling constraint is currently set to. 7635 ''' 7636 return types.ToolingSelectionType[self._Entity.ToolingSelectionType.ToString()] 7637 7638 def SetToAnyValue(self) -> None: 7639 return self._Entity.SetToAnyValue() 7640 7641 def SetToInequality(self, value: float) -> None: 7642 return self._Entity.SetToInequality(value) 7643 7644 def SetToRange(self, min: float, max: float) -> None: 7645 return self._Entity.SetToRange(min, max) 7646 7647 def SetToValue(self, value: float) -> None: 7648 return self._Entity.SetToValue(value)
Tooling constraints are a feature of Design Properties for Zones.
7631 @property 7632 def ToolingSelectionType(self) -> types.ToolingSelectionType: 7633 ''' 7634 Defines which selection a given tooling constraint is currently set to. 7635 ''' 7636 return types.ToolingSelectionType[self._Entity.ToolingSelectionType.ToString()]
Defines which selection a given tooling constraint is currently set to.
Inherited Members
7651class ZoneOverrideCol(IdEntityCol[ZoneOverride]): 7652 def __init__(self, zoneOverrideCol: _api.ZoneOverrideCol): 7653 self._Entity = zoneOverrideCol 7654 self._CollectedClass = ZoneOverride 7655 7656 @property 7657 def ZoneOverrideColList(self) -> tuple[ZoneOverride]: 7658 return tuple([ZoneOverride(zoneOverrideCol) for zoneOverrideCol in self._Entity]) 7659 7660 def Get(self, zoneNumber: int) -> ZoneOverride: 7661 return ZoneOverride(self._Entity.Get(zoneNumber)) 7662 7663 def __getitem__(self, index: int): 7664 return self.ZoneOverrideColList[index] 7665 7666 def __iter__(self): 7667 yield from self.ZoneOverrideColList 7668 7669 def __len__(self): 7670 return len(self.ZoneOverrideColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7673class DesignVariable(IdEntity): 7674 ''' 7675 Holds design variable data. 7676 Min, max, steps, materials. 7677 ''' 7678 def __init__(self, designVariable: _api.DesignVariable): 7679 self._Entity = designVariable 7680 7681 @property 7682 def VariableParameter(self) -> types.VariableParameter: 7683 return types.VariableParameter[self._Entity.VariableParameter.ToString()] 7684 7685 @property 7686 def AllowMaterials(self) -> bool: 7687 return self._Entity.AllowMaterials 7688 7689 @property 7690 def Max(self) -> float: 7691 return self._Entity.Max 7692 7693 @property 7694 def Min(self) -> float: 7695 return self._Entity.Min 7696 7697 @property 7698 def Name(self) -> str: 7699 return self._Entity.Name 7700 7701 @property 7702 def StepSize(self) -> float: 7703 return self._Entity.StepSize 7704 7705 @property 7706 def UseAnalysis(self) -> bool: 7707 return self._Entity.UseAnalysis 7708 7709 @property 7710 def AnalysisMaterial(self) -> str: 7711 return self._Entity.AnalysisMaterial 7712 7713 @property 7714 def AnalysisMaterialType(self) -> types.MaterialType: 7715 return types.MaterialType[self._Entity.AnalysisMaterialType.ToString()] 7716 7717 @property 7718 def SizingMaterialType(self) -> types.MaterialType: 7719 return types.MaterialType[self._Entity.SizingMaterialType.ToString()] 7720 7721 @property 7722 def AnalysisValue(self) -> float: 7723 return self._Entity.AnalysisValue 7724 7725 @property 7726 def Overrides(self) -> ZoneOverrideCol: 7727 result = self._Entity.Overrides 7728 return ZoneOverrideCol(result) if result is not None else None 7729 7730 @Max.setter 7731 def Max(self, value: float) -> None: 7732 self._Entity.Max = value 7733 7734 @Min.setter 7735 def Min(self, value: float) -> None: 7736 self._Entity.Min = value 7737 7738 @StepSize.setter 7739 def StepSize(self, value: float) -> None: 7740 self._Entity.StepSize = value 7741 7742 @UseAnalysis.setter 7743 def UseAnalysis(self, value: bool) -> None: 7744 self._Entity.UseAnalysis = value 7745 7746 @AnalysisMaterial.setter 7747 def AnalysisMaterial(self, value: str) -> None: 7748 self._Entity.AnalysisMaterial = value 7749 7750 @AnalysisValue.setter 7751 def AnalysisValue(self, value: float) -> None: 7752 self._Entity.AnalysisValue = value 7753 7754 @overload 7755 def AddMaterials(self, materialIds: set[int]) -> None: ... 7756 7757 @overload 7758 def AddMaterials(self, materialNames: set[str]) -> None: ... 7759 7760 def GetSizingMaterials(self) -> list[int]: 7761 ''' 7762 Get a list of materials used for sizing, if they exist. 7763 ''' 7764 return [int32 for int32 in self._Entity.GetSizingMaterials()] 7765 7766 def RemoveSizingMaterials(self, materialIds: tuple[int] = None) -> None: 7767 materialIdsList = MakeCSharpIntList(materialIds) 7768 materialIdsEnumerable = IEnumerable(materialIdsList) 7769 return self._Entity.RemoveSizingMaterials(materialIds if materialIds is None else materialIdsEnumerable) 7770 7771 def GetAnalysisMaterial(self) -> int: 7772 ''' 7773 Get the material used for analysis, if it exists. 7774 ''' 7775 return self._Entity.GetAnalysisMaterial() 7776 7777 def RemoveAnalysisMaterial(self) -> None: 7778 ''' 7779 Remove the analysis material assigned to this variable. 7780 ''' 7781 return self._Entity.RemoveAnalysisMaterial() 7782 7783 def AddMaterials(self, item1 = None) -> None: 7784 if isinstance(item1, set) and item1 and isinstance(list(item1)[0], int): 7785 materialIdsSet = HashSet[int]() 7786 if item1 is not None: 7787 for thing in item1: 7788 if thing is not None: 7789 materialIdsSet.Add(thing) 7790 return self._Entity.AddMaterials(materialIdsSet) 7791 7792 if isinstance(item1, set) and item1 and isinstance(list(item1)[0], str): 7793 materialNamesSet = HashSet[str]() 7794 if item1 is not None: 7795 for thing in item1: 7796 if thing is not None: 7797 materialNamesSet.Add(thing) 7798 return self._Entity.AddMaterials(materialNamesSet) 7799 7800 return self._Entity.AddMaterials(item1)
Holds design variable data. Min, max, steps, materials.
7783 def AddMaterials(self, item1 = None) -> None: 7784 if isinstance(item1, set) and item1 and isinstance(list(item1)[0], int): 7785 materialIdsSet = HashSet[int]() 7786 if item1 is not None: 7787 for thing in item1: 7788 if thing is not None: 7789 materialIdsSet.Add(thing) 7790 return self._Entity.AddMaterials(materialIdsSet) 7791 7792 if isinstance(item1, set) and item1 and isinstance(list(item1)[0], str): 7793 materialNamesSet = HashSet[str]() 7794 if item1 is not None: 7795 for thing in item1: 7796 if thing is not None: 7797 materialNamesSet.Add(thing) 7798 return self._Entity.AddMaterials(materialNamesSet) 7799 7800 return self._Entity.AddMaterials(item1)
7760 def GetSizingMaterials(self) -> list[int]: 7761 ''' 7762 Get a list of materials used for sizing, if they exist. 7763 ''' 7764 return [int32 for int32 in self._Entity.GetSizingMaterials()]
Get a list of materials used for sizing, if they exist.
7771 def GetAnalysisMaterial(self) -> int: 7772 ''' 7773 Get the material used for analysis, if it exists. 7774 ''' 7775 return self._Entity.GetAnalysisMaterial()
Get the material used for analysis, if it exists.
7803class ToolingConstraintCol(IdNameEntityCol[ToolingConstraint]): 7804 def __init__(self, toolingConstraintCol: _api.ToolingConstraintCol): 7805 self._Entity = toolingConstraintCol 7806 self._CollectedClass = ToolingConstraint 7807 7808 @property 7809 def ToolingConstraintColList(self) -> tuple[ToolingConstraint]: 7810 return tuple([ToolingConstraint(toolingConstraintCol) for toolingConstraintCol in self._Entity]) 7811 7812 @overload 7813 def Get(self, name: str) -> ToolingConstraint: ... 7814 7815 @overload 7816 def Get(self, id: int) -> ToolingConstraint: ... 7817 7818 def Get(self, item1 = None) -> ToolingConstraint: 7819 if isinstance(item1, str): 7820 return ToolingConstraint(super().Get(item1)) 7821 7822 if isinstance(item1, int): 7823 return ToolingConstraint(super().Get(item1)) 7824 7825 return ToolingConstraint(self._Entity.Get(item1)) 7826 7827 def __getitem__(self, index: int): 7828 return self.ToolingConstraintColList[index] 7829 7830 def __iter__(self): 7831 yield from self.ToolingConstraintColList 7832 7833 def __len__(self): 7834 return len(self.ToolingConstraintColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
7837class DesignVariableCol(IdEntityCol[DesignVariable]): 7838 def __init__(self, designVariableCol: _api.DesignVariableCol): 7839 self._Entity = designVariableCol 7840 self._CollectedClass = DesignVariable 7841 7842 @property 7843 def DesignVariableColList(self) -> tuple[DesignVariable]: 7844 return tuple([DesignVariable(designVariableCol) for designVariableCol in self._Entity]) 7845 7846 @overload 7847 def Get(self, parameterId: types.VariableParameter) -> DesignVariable: ... 7848 7849 @overload 7850 def Get(self, id: int) -> DesignVariable: ... 7851 7852 def Get(self, item1 = None) -> DesignVariable: 7853 if isinstance(item1, types.VariableParameter): 7854 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value))) 7855 7856 if isinstance(item1, int): 7857 return DesignVariable(super().Get(item1)) 7858 7859 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value))) 7860 7861 def __getitem__(self, index: int): 7862 return self.DesignVariableColList[index] 7863 7864 def __iter__(self): 7865 yield from self.DesignVariableColList 7866 7867 def __len__(self): 7868 return len(self.DesignVariableColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
7852 def Get(self, item1 = None) -> DesignVariable: 7853 if isinstance(item1, types.VariableParameter): 7854 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value))) 7855 7856 if isinstance(item1, int): 7857 return DesignVariable(super().Get(item1)) 7858 7859 return DesignVariable(self._Entity.Get(_types.VariableParameter(item1.value)))
Inherited Members
7871class ZoneDesignProperty(DesignProperty): 7872 def __init__(self, zoneDesignProperty: _api.ZoneDesignProperty): 7873 self._Entity = zoneDesignProperty 7874 7875 @property 7876 def FamilyId(self) -> types.BeamPanelFamily: 7877 return types.BeamPanelFamily[self._Entity.FamilyId.ToString()] 7878 7879 @property 7880 def ConceptId(self) -> int: 7881 return self._Entity.ConceptId 7882 7883 @property 7884 def FamilyConceptUID(self) -> types.FamilyConceptUID: 7885 return types.FamilyConceptUID[self._Entity.FamilyConceptUID.ToString()] 7886 7887 @property 7888 def ToolingConstraints(self) -> ToolingConstraintCol: 7889 result = self._Entity.ToolingConstraints 7890 return ToolingConstraintCol(result) if result is not None else None 7891 7892 @property 7893 def DesignVariables(self) -> DesignVariableCol: 7894 result = self._Entity.DesignVariables 7895 return DesignVariableCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
7898class BulkUpdaterBase(ABC): 7899 def __init__(self, bulkUpdaterBase: _api.BulkUpdaterBase): 7900 self._Entity = bulkUpdaterBase 7901 7902 def Update(self, func: Action) -> None: 7903 entityType = self._Entity.GetType().BaseType.GenericTypeArguments[0] 7904 funcAction = Action[entityType](func) 7905 return self._Entity.Update(funcAction)
7908class LoadPropertyUserRowBulkUpdater(BulkUpdaterBase): 7909 def __init__(self, loadPropertyUserRowBulkUpdater: _api.LoadPropertyUserRowBulkUpdater): 7910 self._Entity = loadPropertyUserRowBulkUpdater
Inherited Members
7913class LoadPropertyUserRow(IdNameEntity): 7914 def __init__(self, loadPropertyUserRow: _api.LoadPropertyUserRow): 7915 self._Entity = loadPropertyUserRow 7916 7917 @property 7918 def LoadScenarioId(self) -> int: 7919 return self._Entity.LoadScenarioId 7920 7921 @property 7922 def LoadPropertyId(self) -> int: 7923 return self._Entity.LoadPropertyId 7924 7925 @property 7926 def Type(self) -> types.LoadSetType: 7927 return types.LoadSetType[self._Entity.Type.ToString()] 7928 7929 @property 7930 def ReferenceTemperature(self) -> float: 7931 return self._Entity.ReferenceTemperature 7932 7933 @property 7934 def PressureOrTemperature(self) -> float: 7935 return self._Entity.PressureOrTemperature 7936 7937 @property 7938 def LimitFactor(self) -> float: 7939 return self._Entity.LimitFactor 7940 7941 @property 7942 def UltimateFactor(self) -> float: 7943 return self._Entity.UltimateFactor 7944 7945 @ReferenceTemperature.setter 7946 def ReferenceTemperature(self, value: float) -> None: 7947 self._Entity.ReferenceTemperature = value 7948 7949 @PressureOrTemperature.setter 7950 def PressureOrTemperature(self, value: float) -> None: 7951 self._Entity.PressureOrTemperature = value 7952 7953 @LimitFactor.setter 7954 def LimitFactor(self, value: float) -> None: 7955 self._Entity.LimitFactor = value 7956 7957 @UltimateFactor.setter 7958 def UltimateFactor(self, value: float) -> None: 7959 self._Entity.UltimateFactor = value
Represents an entity with an ID and Name.
Inherited Members
7962class LoadPropertyUserBeamRow(LoadPropertyUserRow): 7963 def __init__(self, loadPropertyUserBeamRow: _api.LoadPropertyUserBeamRow): 7964 self._Entity = loadPropertyUserBeamRow 7965 7966 @property 7967 def M1A(self) -> float: 7968 return self._Entity.M1A 7969 7970 @property 7971 def M2A(self) -> float: 7972 return self._Entity.M2A 7973 7974 @property 7975 def M1B(self) -> float: 7976 return self._Entity.M1B 7977 7978 @property 7979 def M2B(self) -> float: 7980 return self._Entity.M2B 7981 7982 @property 7983 def V1(self) -> float: 7984 return self._Entity.V1 7985 7986 @property 7987 def V2(self) -> float: 7988 return self._Entity.V2 7989 7990 @property 7991 def Axial(self) -> float: 7992 return self._Entity.Axial 7993 7994 @property 7995 def Torque(self) -> float: 7996 return self._Entity.Torque 7997 7998 @M1A.setter 7999 def M1A(self, value: float) -> None: 8000 self._Entity.M1A = value 8001 8002 @M2A.setter 8003 def M2A(self, value: float) -> None: 8004 self._Entity.M2A = value 8005 8006 @M1B.setter 8007 def M1B(self, value: float) -> None: 8008 self._Entity.M1B = value 8009 8010 @M2B.setter 8011 def M2B(self, value: float) -> None: 8012 self._Entity.M2B = value 8013 8014 @V1.setter 8015 def V1(self, value: float) -> None: 8016 self._Entity.V1 = value 8017 8018 @V2.setter 8019 def V2(self, value: float) -> None: 8020 self._Entity.V2 = value 8021 8022 @Axial.setter 8023 def Axial(self, value: float) -> None: 8024 self._Entity.Axial = value 8025 8026 @Torque.setter 8027 def Torque(self, value: float) -> None: 8028 self._Entity.Torque = value
Represents an entity with an ID and Name.
8031class LoadPropertyUserFeaBeamRow(LoadPropertyUserBeamRow): 8032 def __init__(self, loadPropertyUserFeaBeamRow: _api.LoadPropertyUserFeaBeamRow): 8033 self._Entity = loadPropertyUserFeaBeamRow 8034 8035 def SetName(self, name: str) -> None: 8036 return self._Entity.SetName(name)
Represents an entity with an ID and Name.
8039class LoadPropertyUserFeaBeamRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8040 def __init__(self, loadPropertyUserFeaBeamRowBulkUpdater: _api.LoadPropertyUserFeaBeamRowBulkUpdater): 8041 self._Entity = loadPropertyUserFeaBeamRowBulkUpdater 8042 8043 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaBeamRow]) -> LoadPropertyUserFeaBeamRowBulkUpdater: 8044 itemsList = List[_api.LoadPropertyUserFeaBeamRow]() 8045 if items is not None: 8046 for thing in items: 8047 if thing is not None: 8048 itemsList.Add(thing._Entity) 8049 return LoadPropertyUserFeaBeamRowBulkUpdater(_api.LoadPropertyUserFeaBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8043 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaBeamRow]) -> LoadPropertyUserFeaBeamRowBulkUpdater: 8044 itemsList = List[_api.LoadPropertyUserFeaBeamRow]() 8045 if items is not None: 8046 for thing in items: 8047 if thing is not None: 8048 itemsList.Add(thing._Entity) 8049 return LoadPropertyUserFeaBeamRowBulkUpdater(_api.LoadPropertyUserFeaBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8052class LoadPropertyUserPanelJointRow(LoadPropertyUserRow): 8053 def __init__(self, loadPropertyUserPanelJointRow: _api.LoadPropertyUserPanelJointRow): 8054 self._Entity = loadPropertyUserPanelJointRow 8055 8056 @property 8057 def Nx(self) -> float: 8058 return self._Entity.Nx 8059 8060 @property 8061 def Ny(self) -> float: 8062 return self._Entity.Ny 8063 8064 @property 8065 def Nxy(self) -> float: 8066 return self._Entity.Nxy 8067 8068 @property 8069 def Mx(self) -> float: 8070 return self._Entity.Mx 8071 8072 @property 8073 def My(self) -> float: 8074 return self._Entity.My 8075 8076 @property 8077 def Mxy(self) -> float: 8078 return self._Entity.Mxy 8079 8080 @property 8081 def Qx(self) -> float: 8082 return self._Entity.Qx 8083 8084 @property 8085 def Qy(self) -> float: 8086 return self._Entity.Qy 8087 8088 @Nx.setter 8089 def Nx(self, value: float) -> None: 8090 self._Entity.Nx = value 8091 8092 @Ny.setter 8093 def Ny(self, value: float) -> None: 8094 self._Entity.Ny = value 8095 8096 @Nxy.setter 8097 def Nxy(self, value: float) -> None: 8098 self._Entity.Nxy = value 8099 8100 @Mx.setter 8101 def Mx(self, value: float) -> None: 8102 self._Entity.Mx = value 8103 8104 @My.setter 8105 def My(self, value: float) -> None: 8106 self._Entity.My = value 8107 8108 @Mxy.setter 8109 def Mxy(self, value: float) -> None: 8110 self._Entity.Mxy = value 8111 8112 @Qx.setter 8113 def Qx(self, value: float) -> None: 8114 self._Entity.Qx = value 8115 8116 @Qy.setter 8117 def Qy(self, value: float) -> None: 8118 self._Entity.Qy = value
Represents an entity with an ID and Name.
8121class LoadPropertyUserFeaJointRow(LoadPropertyUserPanelJointRow): 8122 def __init__(self, loadPropertyUserFeaJointRow: _api.LoadPropertyUserFeaJointRow): 8123 self._Entity = loadPropertyUserFeaJointRow 8124 8125 def SetName(self, name: str) -> None: 8126 return self._Entity.SetName(name)
Represents an entity with an ID and Name.
8129class LoadPropertyUserFeaJointRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8130 def __init__(self, loadPropertyUserFeaJointRowBulkUpdater: _api.LoadPropertyUserFeaJointRowBulkUpdater): 8131 self._Entity = loadPropertyUserFeaJointRowBulkUpdater 8132 8133 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaJointRow]) -> LoadPropertyUserFeaJointRowBulkUpdater: 8134 itemsList = List[_api.LoadPropertyUserFeaJointRow]() 8135 if items is not None: 8136 for thing in items: 8137 if thing is not None: 8138 itemsList.Add(thing._Entity) 8139 return LoadPropertyUserFeaJointRowBulkUpdater(_api.LoadPropertyUserFeaJointRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8133 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaJointRow]) -> LoadPropertyUserFeaJointRowBulkUpdater: 8134 itemsList = List[_api.LoadPropertyUserFeaJointRow]() 8135 if items is not None: 8136 for thing in items: 8137 if thing is not None: 8138 itemsList.Add(thing._Entity) 8139 return LoadPropertyUserFeaJointRowBulkUpdater(_api.LoadPropertyUserFeaJointRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8142class LoadPropertyUserFeaPanelRow(LoadPropertyUserPanelJointRow): 8143 def __init__(self, loadPropertyUserFeaPanelRow: _api.LoadPropertyUserFeaPanelRow): 8144 self._Entity = loadPropertyUserFeaPanelRow 8145 8146 def SetName(self, name: str) -> None: 8147 return self._Entity.SetName(name)
Represents an entity with an ID and Name.
8150class LoadPropertyUserFeaPanelRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8151 def __init__(self, loadPropertyUserFeaPanelRowBulkUpdater: _api.LoadPropertyUserFeaPanelRowBulkUpdater): 8152 self._Entity = loadPropertyUserFeaPanelRowBulkUpdater 8153 8154 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaPanelRow]) -> LoadPropertyUserFeaPanelRowBulkUpdater: 8155 itemsList = List[_api.LoadPropertyUserFeaPanelRow]() 8156 if items is not None: 8157 for thing in items: 8158 if thing is not None: 8159 itemsList.Add(thing._Entity) 8160 return LoadPropertyUserFeaPanelRowBulkUpdater(_api.LoadPropertyUserFeaPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8154 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserFeaPanelRow]) -> LoadPropertyUserFeaPanelRowBulkUpdater: 8155 itemsList = List[_api.LoadPropertyUserFeaPanelRow]() 8156 if items is not None: 8157 for thing in items: 8158 if thing is not None: 8159 itemsList.Add(thing._Entity) 8160 return LoadPropertyUserFeaPanelRowBulkUpdater(_api.LoadPropertyUserFeaPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8163class LoadPropertyUserGeneralBeamRow(LoadPropertyUserBeamRow): 8164 def __init__(self, loadPropertyUserGeneralBeamRow: _api.LoadPropertyUserGeneralBeamRow): 8165 self._Entity = loadPropertyUserGeneralBeamRow 8166 8167 @property 8168 def M1A(self) -> float: 8169 return self._Entity.M1A 8170 8171 @property 8172 def M2A(self) -> float: 8173 return self._Entity.M2A 8174 8175 @property 8176 def M1B(self) -> float: 8177 return self._Entity.M1B 8178 8179 @property 8180 def M2B(self) -> float: 8181 return self._Entity.M2B 8182 8183 @property 8184 def V1(self) -> float: 8185 return self._Entity.V1 8186 8187 @property 8188 def V2(self) -> float: 8189 return self._Entity.V2 8190 8191 @property 8192 def Axial(self) -> float: 8193 return self._Entity.Axial 8194 8195 @property 8196 def Torque(self) -> float: 8197 return self._Entity.Torque 8198 8199 @property 8200 def M1AType(self) -> types.BoundaryConditionType: 8201 return types.BoundaryConditionType[self._Entity.M1AType.ToString()] 8202 8203 @property 8204 def M2AType(self) -> types.BoundaryConditionType: 8205 return types.BoundaryConditionType[self._Entity.M2AType.ToString()] 8206 8207 @property 8208 def M1BType(self) -> types.BoundaryConditionType: 8209 return types.BoundaryConditionType[self._Entity.M1BType.ToString()] 8210 8211 @property 8212 def M2BType(self) -> types.BoundaryConditionType: 8213 return types.BoundaryConditionType[self._Entity.M2BType.ToString()] 8214 8215 @property 8216 def V1Type(self) -> types.BoundaryConditionType: 8217 return types.BoundaryConditionType[self._Entity.V1Type.ToString()] 8218 8219 @property 8220 def V2Type(self) -> types.BoundaryConditionType: 8221 return types.BoundaryConditionType[self._Entity.V2Type.ToString()] 8222 8223 @property 8224 def AxialType(self) -> types.BoundaryConditionType: 8225 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 8226 8227 @property 8228 def TorqueType(self) -> types.BoundaryConditionType: 8229 return types.BoundaryConditionType[self._Entity.TorqueType.ToString()] 8230 8231 @M1A.setter 8232 def M1A(self, value: float) -> None: 8233 self._Entity.M1A = value 8234 8235 @M2A.setter 8236 def M2A(self, value: float) -> None: 8237 self._Entity.M2A = value 8238 8239 @M1B.setter 8240 def M1B(self, value: float) -> None: 8241 self._Entity.M1B = value 8242 8243 @M2B.setter 8244 def M2B(self, value: float) -> None: 8245 self._Entity.M2B = value 8246 8247 @V1.setter 8248 def V1(self, value: float) -> None: 8249 self._Entity.V1 = value 8250 8251 @V2.setter 8252 def V2(self, value: float) -> None: 8253 self._Entity.V2 = value 8254 8255 @Axial.setter 8256 def Axial(self, value: float) -> None: 8257 self._Entity.Axial = value 8258 8259 @Torque.setter 8260 def Torque(self, value: float) -> None: 8261 self._Entity.Torque = value
Represents an entity with an ID and Name.
8264class LoadPropertyUserGeneralBeamRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8265 def __init__(self, loadPropertyUserGeneralBeamRowBulkUpdater: _api.LoadPropertyUserGeneralBeamRowBulkUpdater): 8266 self._Entity = loadPropertyUserGeneralBeamRowBulkUpdater 8267 8268 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralBeamRow]) -> LoadPropertyUserGeneralBeamRowBulkUpdater: 8269 itemsList = List[_api.LoadPropertyUserGeneralBeamRow]() 8270 if items is not None: 8271 for thing in items: 8272 if thing is not None: 8273 itemsList.Add(thing._Entity) 8274 return LoadPropertyUserGeneralBeamRowBulkUpdater(_api.LoadPropertyUserGeneralBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8268 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralBeamRow]) -> LoadPropertyUserGeneralBeamRowBulkUpdater: 8269 itemsList = List[_api.LoadPropertyUserGeneralBeamRow]() 8270 if items is not None: 8271 for thing in items: 8272 if thing is not None: 8273 itemsList.Add(thing._Entity) 8274 return LoadPropertyUserGeneralBeamRowBulkUpdater(_api.LoadPropertyUserGeneralBeamRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8277class LoadPropertyUserGeneralPanelRow(LoadPropertyUserPanelJointRow): 8278 def __init__(self, loadPropertyUserGeneralPanelRow: _api.LoadPropertyUserGeneralPanelRow): 8279 self._Entity = loadPropertyUserGeneralPanelRow 8280 8281 @property 8282 def Nx(self) -> float: 8283 return self._Entity.Nx 8284 8285 @property 8286 def Ny(self) -> float: 8287 return self._Entity.Ny 8288 8289 @property 8290 def Nxy(self) -> float: 8291 return self._Entity.Nxy 8292 8293 @property 8294 def Mx(self) -> float: 8295 return self._Entity.Mx 8296 8297 @property 8298 def My(self) -> float: 8299 return self._Entity.My 8300 8301 @property 8302 def Mxy(self) -> float: 8303 return self._Entity.Mxy 8304 8305 @property 8306 def Qx(self) -> float: 8307 return self._Entity.Qx 8308 8309 @property 8310 def Qy(self) -> float: 8311 return self._Entity.Qy 8312 8313 @property 8314 def NxType(self) -> types.BoundaryConditionType: 8315 return types.BoundaryConditionType[self._Entity.NxType.ToString()] 8316 8317 @property 8318 def NyType(self) -> types.BoundaryConditionType: 8319 return types.BoundaryConditionType[self._Entity.NyType.ToString()] 8320 8321 @property 8322 def NxyType(self) -> types.BoundaryConditionType: 8323 return types.BoundaryConditionType[self._Entity.NxyType.ToString()] 8324 8325 @property 8326 def MxType(self) -> types.BoundaryConditionType: 8327 return types.BoundaryConditionType[self._Entity.MxType.ToString()] 8328 8329 @property 8330 def MyType(self) -> types.BoundaryConditionType: 8331 return types.BoundaryConditionType[self._Entity.MyType.ToString()] 8332 8333 @property 8334 def MxyType(self) -> types.BoundaryConditionType: 8335 return types.BoundaryConditionType[self._Entity.MxyType.ToString()] 8336 8337 @property 8338 def QxType(self) -> types.BoundaryConditionType: 8339 return types.BoundaryConditionType[self._Entity.QxType.ToString()] 8340 8341 @property 8342 def QyType(self) -> types.BoundaryConditionType: 8343 return types.BoundaryConditionType[self._Entity.QyType.ToString()] 8344 8345 @Nx.setter 8346 def Nx(self, value: float) -> None: 8347 self._Entity.Nx = value 8348 8349 @Ny.setter 8350 def Ny(self, value: float) -> None: 8351 self._Entity.Ny = value 8352 8353 @Nxy.setter 8354 def Nxy(self, value: float) -> None: 8355 self._Entity.Nxy = value 8356 8357 @Mx.setter 8358 def Mx(self, value: float) -> None: 8359 self._Entity.Mx = value 8360 8361 @My.setter 8362 def My(self, value: float) -> None: 8363 self._Entity.My = value 8364 8365 @Mxy.setter 8366 def Mxy(self, value: float) -> None: 8367 self._Entity.Mxy = value 8368 8369 @Qx.setter 8370 def Qx(self, value: float) -> None: 8371 self._Entity.Qx = value 8372 8373 @Qy.setter 8374 def Qy(self, value: float) -> None: 8375 self._Entity.Qy = value
Represents an entity with an ID and Name.
8378class LoadPropertyUserGeneralPanelRowBulkUpdater(LoadPropertyUserRowBulkUpdater): 8379 def __init__(self, loadPropertyUserGeneralPanelRowBulkUpdater: _api.LoadPropertyUserGeneralPanelRowBulkUpdater): 8380 self._Entity = loadPropertyUserGeneralPanelRowBulkUpdater 8381 8382 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralPanelRow]) -> LoadPropertyUserGeneralPanelRowBulkUpdater: 8383 itemsList = List[_api.LoadPropertyUserGeneralPanelRow]() 8384 if items is not None: 8385 for thing in items: 8386 if thing is not None: 8387 itemsList.Add(thing._Entity) 8388 return LoadPropertyUserGeneralPanelRowBulkUpdater(_api.LoadPropertyUserGeneralPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
8382 def GetBulkUpdater(application: Application, items: list[LoadPropertyUserGeneralPanelRow]) -> LoadPropertyUserGeneralPanelRowBulkUpdater: 8383 itemsList = List[_api.LoadPropertyUserGeneralPanelRow]() 8384 if items is not None: 8385 for thing in items: 8386 if thing is not None: 8387 itemsList.Add(thing._Entity) 8388 return LoadPropertyUserGeneralPanelRowBulkUpdater(_api.LoadPropertyUserGeneralPanelRowBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
8391class LoadPropertyFea(LoadProperty): 8392 def __init__(self, loadPropertyFea: _api.LoadPropertyFea): 8393 self._Entity = loadPropertyFea 8394 8395 @property 8396 def HasNx(self) -> bool: 8397 return self._Entity.HasNx 8398 8399 @property 8400 def HasNy(self) -> bool: 8401 return self._Entity.HasNy 8402 8403 @property 8404 def HasNxy(self) -> bool: 8405 return self._Entity.HasNxy 8406 8407 @property 8408 def HasMx(self) -> bool: 8409 return self._Entity.HasMx 8410 8411 @property 8412 def HasMy(self) -> bool: 8413 return self._Entity.HasMy 8414 8415 @property 8416 def HasMxy(self) -> bool: 8417 return self._Entity.HasMxy 8418 8419 @property 8420 def HasQx(self) -> bool: 8421 return self._Entity.HasQx 8422 8423 @property 8424 def HasQy(self) -> bool: 8425 return self._Entity.HasQy 8426 8427 @property 8428 def HasM1a(self) -> bool: 8429 return self._Entity.HasM1a 8430 8431 @property 8432 def HasM1b(self) -> bool: 8433 return self._Entity.HasM1b 8434 8435 @property 8436 def M2a(self) -> bool: 8437 return self._Entity.M2a 8438 8439 @property 8440 def V1(self) -> bool: 8441 return self._Entity.V1 8442 8443 @property 8444 def V2(self) -> bool: 8445 return self._Entity.V2 8446 8447 @property 8448 def Axial(self) -> bool: 8449 return self._Entity.Axial 8450 8451 @property 8452 def Torque(self) -> bool: 8453 return self._Entity.Torque 8454 8455 @property 8456 def Tension(self) -> bool: 8457 return self._Entity.Tension 8458 8459 @property 8460 def Shear(self) -> bool: 8461 return self._Entity.Shear 8462 8463 @property 8464 def Moment(self) -> bool: 8465 return self._Entity.Moment 8466 8467 @HasNx.setter 8468 def HasNx(self, value: bool) -> None: 8469 self._Entity.HasNx = value 8470 8471 @HasNy.setter 8472 def HasNy(self, value: bool) -> None: 8473 self._Entity.HasNy = value 8474 8475 @HasNxy.setter 8476 def HasNxy(self, value: bool) -> None: 8477 self._Entity.HasNxy = value 8478 8479 @HasMx.setter 8480 def HasMx(self, value: bool) -> None: 8481 self._Entity.HasMx = value 8482 8483 @HasMy.setter 8484 def HasMy(self, value: bool) -> None: 8485 self._Entity.HasMy = value 8486 8487 @HasMxy.setter 8488 def HasMxy(self, value: bool) -> None: 8489 self._Entity.HasMxy = value 8490 8491 @HasQx.setter 8492 def HasQx(self, value: bool) -> None: 8493 self._Entity.HasQx = value 8494 8495 @HasQy.setter 8496 def HasQy(self, value: bool) -> None: 8497 self._Entity.HasQy = value 8498 8499 @HasM1a.setter 8500 def HasM1a(self, value: bool) -> None: 8501 self._Entity.HasM1a = value 8502 8503 @HasM1b.setter 8504 def HasM1b(self, value: bool) -> None: 8505 self._Entity.HasM1b = value 8506 8507 @M2a.setter 8508 def M2a(self, value: bool) -> None: 8509 self._Entity.M2a = value 8510 8511 @V1.setter 8512 def V1(self, value: bool) -> None: 8513 self._Entity.V1 = value 8514 8515 @V2.setter 8516 def V2(self, value: bool) -> None: 8517 self._Entity.V2 = value 8518 8519 @Axial.setter 8520 def Axial(self, value: bool) -> None: 8521 self._Entity.Axial = value 8522 8523 @Torque.setter 8524 def Torque(self, value: bool) -> None: 8525 self._Entity.Torque = value 8526 8527 @Tension.setter 8528 def Tension(self, value: bool) -> None: 8529 self._Entity.Tension = value 8530 8531 @Shear.setter 8532 def Shear(self, value: bool) -> None: 8533 self._Entity.Shear = value 8534 8535 @Moment.setter 8536 def Moment(self, value: bool) -> None: 8537 self._Entity.Moment = value
Represents an entity with an ID and Name.
Inherited Members
8540class LoadPropertyAverage(LoadPropertyFea): 8541 def __init__(self, loadPropertyAverage: _api.LoadPropertyAverage): 8542 self._Entity = loadPropertyAverage 8543 8544 @property 8545 def ElementType(self) -> types.LoadPropertyAverageElementType: 8546 return types.LoadPropertyAverageElementType[self._Entity.ElementType.ToString()] 8547 8548 @ElementType.setter 8549 def ElementType(self, value: types.LoadPropertyAverageElementType) -> None: 8550 self._Entity.ElementType = _types.LoadPropertyAverageElementType(value.value)
Represents an entity with an ID and Name.
8553class LoadPropertyElementBased(LoadPropertyFea): 8554 def __init__(self, loadPropertyElementBased: _api.LoadPropertyElementBased): 8555 self._Entity = loadPropertyElementBased
Represents an entity with an ID and Name.
8558class LoadPropertyNeighborAverage(LoadPropertyFea): 8559 def __init__(self, loadPropertyNeighborAverage: _api.LoadPropertyNeighborAverage): 8560 self._Entity = loadPropertyNeighborAverage 8561 8562 @property 8563 def NumberOfNeighborsPerSide(self) -> int: 8564 return self._Entity.NumberOfNeighborsPerSide 8565 8566 @NumberOfNeighborsPerSide.setter 8567 def NumberOfNeighborsPerSide(self, value: int) -> None: 8568 self._Entity.NumberOfNeighborsPerSide = value
Represents an entity with an ID and Name.
8571class LoadPropertyPeakLoad(LoadPropertyFea): 8572 def __init__(self, loadPropertyPeakLoad: _api.LoadPropertyPeakLoad): 8573 self._Entity = loadPropertyPeakLoad 8574 8575 @property 8576 def ElementScope(self) -> types.LoadPropertyPeakElementScope: 8577 return types.LoadPropertyPeakElementScope[self._Entity.ElementScope.ToString()] 8578 8579 @ElementScope.setter 8580 def ElementScope(self, value: types.LoadPropertyPeakElementScope) -> None: 8581 self._Entity.ElementScope = _types.LoadPropertyPeakElementScope(value.value)
Represents an entity with an ID and Name.
8584class LoadPropertyStatistical(LoadPropertyFea): 8585 def __init__(self, loadPropertyStatistical: _api.LoadPropertyStatistical): 8586 self._Entity = loadPropertyStatistical 8587 8588 @property 8589 def NSigma(self) -> int: 8590 return self._Entity.NSigma 8591 8592 @NSigma.setter 8593 def NSigma(self, value: int) -> None: 8594 self._Entity.NSigma = value
Represents an entity with an ID and Name.
8597class LoadPropertyUserFeaRowCol(IdNameEntityCol, Generic[T]): 8598 def __init__(self, loadPropertyUserFeaRowCol: _api.LoadPropertyUserFeaRowCol): 8599 self._Entity = loadPropertyUserFeaRowCol 8600 self._CollectedClass = T 8601 8602 @property 8603 def LoadPropertyUserFeaRowColList(self) -> tuple[T]: 8604 if self._Entity.Count() <= 0: 8605 return () 8606 thisClass = type(self._Entity._items[0]).__name__ 8607 givenClass = T 8608 for subclass in T.__subclasses__(): 8609 if subclass.__name__ == thisClass: 8610 givenClass = subclass 8611 return tuple([givenClass(loadPropertyUserFeaRowCol) for loadPropertyUserFeaRowCol in self._Entity]) 8612 8613 def AddScenario(self, name: str = None) -> T: 8614 return self._Entity.AddScenario(name) 8615 8616 @overload 8617 def DeleteScenario(self, scenarioId: int) -> bool: ... 8618 8619 @overload 8620 def DeleteScenario(self, scenarioName: str) -> bool: ... 8621 8622 @overload 8623 def Get(self, name: str) -> T: ... 8624 8625 @overload 8626 def Get(self, id: int) -> T: ... 8627 8628 def DeleteScenario(self, item1 = None) -> bool: 8629 if isinstance(item1, int): 8630 return self._Entity.DeleteScenario(item1) 8631 8632 if isinstance(item1, str): 8633 return self._Entity.DeleteScenario(item1) 8634 8635 return self._Entity.DeleteScenario(item1) 8636 8637 def Get(self, item1 = None) -> T: 8638 if isinstance(item1, str): 8639 return super().Get(item1) 8640 8641 if isinstance(item1, int): 8642 return super().Get(item1) 8643 8644 return self._Entity.Get(item1) 8645 8646 def __getitem__(self, index: int): 8647 return self.LoadPropertyUserFeaRowColList[index] 8648 8649 def __iter__(self): 8650 yield from self.LoadPropertyUserFeaRowColList 8651 8652 def __len__(self): 8653 return len(self.LoadPropertyUserFeaRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8602 @property 8603 def LoadPropertyUserFeaRowColList(self) -> tuple[T]: 8604 if self._Entity.Count() <= 0: 8605 return () 8606 thisClass = type(self._Entity._items[0]).__name__ 8607 givenClass = T 8608 for subclass in T.__subclasses__(): 8609 if subclass.__name__ == thisClass: 8610 givenClass = subclass 8611 return tuple([givenClass(loadPropertyUserFeaRowCol) for loadPropertyUserFeaRowCol in self._Entity])
Inherited Members
8656class LoadPropertyUserFeaBeamRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaBeamRow]): 8657 def __init__(self, loadPropertyUserFeaBeamRowCol: _api.LoadPropertyUserFeaBeamRowCol): 8658 self._Entity = loadPropertyUserFeaBeamRowCol 8659 self._CollectedClass = LoadPropertyUserFeaBeamRow 8660 8661 @property 8662 def LoadPropertyUserFeaBeamRowColList(self) -> tuple[LoadPropertyUserFeaBeamRow]: 8663 return tuple([LoadPropertyUserFeaBeamRow(loadPropertyUserFeaBeamRowCol) for loadPropertyUserFeaBeamRowCol in self._Entity]) 8664 8665 @overload 8666 def DeleteScenario(self, scenarioId: int) -> bool: ... 8667 8668 @overload 8669 def DeleteScenario(self, scenarioName: str) -> bool: ... 8670 8671 @overload 8672 def Get(self, name: str) -> LoadPropertyUserFeaBeamRow: ... 8673 8674 @overload 8675 def Get(self, id: int) -> LoadPropertyUserFeaBeamRow: ... 8676 8677 def DeleteScenario(self, item1 = None) -> bool: 8678 if isinstance(item1, int): 8679 return bool(super().DeleteScenario(item1)) 8680 8681 if isinstance(item1, str): 8682 return bool(super().DeleteScenario(item1)) 8683 8684 return self._Entity.DeleteScenario(item1) 8685 8686 def Get(self, item1 = None) -> LoadPropertyUserFeaBeamRow: 8687 if isinstance(item1, str): 8688 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8689 8690 if isinstance(item1, int): 8691 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8692 8693 return LoadPropertyUserFeaBeamRow(self._Entity.Get(item1)) 8694 8695 def __getitem__(self, index: int): 8696 return self.LoadPropertyUserFeaBeamRowColList[index] 8697 8698 def __iter__(self): 8699 yield from self.LoadPropertyUserFeaBeamRowColList 8700 8701 def __len__(self): 8702 return len(self.LoadPropertyUserFeaBeamRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8686 def Get(self, item1 = None) -> LoadPropertyUserFeaBeamRow: 8687 if isinstance(item1, str): 8688 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8689 8690 if isinstance(item1, int): 8691 return LoadPropertyUserFeaBeamRow(super().Get(item1)) 8692 8693 return LoadPropertyUserFeaBeamRow(self._Entity.Get(item1))
8705class LoadPropertyUserFeaBeam(LoadProperty): 8706 def __init__(self, loadPropertyUserFeaBeam: _api.LoadPropertyUserFeaBeam): 8707 self._Entity = loadPropertyUserFeaBeam 8708 8709 @property 8710 def UserFeaRows(self) -> LoadPropertyUserFeaBeamRowCol: 8711 result = self._Entity.UserFeaRows 8712 return LoadPropertyUserFeaBeamRowCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
8715class LoadPropertyUserFeaJointRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaJointRow]): 8716 def __init__(self, loadPropertyUserFeaJointRowCol: _api.LoadPropertyUserFeaJointRowCol): 8717 self._Entity = loadPropertyUserFeaJointRowCol 8718 self._CollectedClass = LoadPropertyUserFeaJointRow 8719 8720 @property 8721 def LoadPropertyUserFeaJointRowColList(self) -> tuple[LoadPropertyUserFeaJointRow]: 8722 return tuple([LoadPropertyUserFeaJointRow(loadPropertyUserFeaJointRowCol) for loadPropertyUserFeaJointRowCol in self._Entity]) 8723 8724 @overload 8725 def DeleteScenario(self, scenarioId: int) -> bool: ... 8726 8727 @overload 8728 def DeleteScenario(self, scenarioName: str) -> bool: ... 8729 8730 @overload 8731 def Get(self, name: str) -> LoadPropertyUserFeaJointRow: ... 8732 8733 @overload 8734 def Get(self, id: int) -> LoadPropertyUserFeaJointRow: ... 8735 8736 def DeleteScenario(self, item1 = None) -> bool: 8737 if isinstance(item1, int): 8738 return bool(super().DeleteScenario(item1)) 8739 8740 if isinstance(item1, str): 8741 return bool(super().DeleteScenario(item1)) 8742 8743 return self._Entity.DeleteScenario(item1) 8744 8745 def Get(self, item1 = None) -> LoadPropertyUserFeaJointRow: 8746 if isinstance(item1, str): 8747 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8748 8749 if isinstance(item1, int): 8750 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8751 8752 return LoadPropertyUserFeaJointRow(self._Entity.Get(item1)) 8753 8754 def __getitem__(self, index: int): 8755 return self.LoadPropertyUserFeaJointRowColList[index] 8756 8757 def __iter__(self): 8758 yield from self.LoadPropertyUserFeaJointRowColList 8759 8760 def __len__(self): 8761 return len(self.LoadPropertyUserFeaJointRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8745 def Get(self, item1 = None) -> LoadPropertyUserFeaJointRow: 8746 if isinstance(item1, str): 8747 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8748 8749 if isinstance(item1, int): 8750 return LoadPropertyUserFeaJointRow(super().Get(item1)) 8751 8752 return LoadPropertyUserFeaJointRow(self._Entity.Get(item1))
8764class LoadPropertyUserFeaJoint(LoadProperty): 8765 def __init__(self, loadPropertyUserFeaJoint: _api.LoadPropertyUserFeaJoint): 8766 self._Entity = loadPropertyUserFeaJoint 8767 8768 @property 8769 def UserFeaRows(self) -> LoadPropertyUserFeaJointRowCol: 8770 result = self._Entity.UserFeaRows 8771 return LoadPropertyUserFeaJointRowCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
8774class LoadPropertyUserFeaPanelRowCol(LoadPropertyUserFeaRowCol[LoadPropertyUserFeaPanelRow]): 8775 def __init__(self, loadPropertyUserFeaPanelRowCol: _api.LoadPropertyUserFeaPanelRowCol): 8776 self._Entity = loadPropertyUserFeaPanelRowCol 8777 self._CollectedClass = LoadPropertyUserFeaPanelRow 8778 8779 @property 8780 def LoadPropertyUserFeaPanelRowColList(self) -> tuple[LoadPropertyUserFeaPanelRow]: 8781 return tuple([LoadPropertyUserFeaPanelRow(loadPropertyUserFeaPanelRowCol) for loadPropertyUserFeaPanelRowCol in self._Entity]) 8782 8783 @overload 8784 def DeleteScenario(self, scenarioId: int) -> bool: ... 8785 8786 @overload 8787 def DeleteScenario(self, scenarioName: str) -> bool: ... 8788 8789 @overload 8790 def Get(self, name: str) -> LoadPropertyUserFeaPanelRow: ... 8791 8792 @overload 8793 def Get(self, id: int) -> LoadPropertyUserFeaPanelRow: ... 8794 8795 def DeleteScenario(self, item1 = None) -> bool: 8796 if isinstance(item1, int): 8797 return bool(super().DeleteScenario(item1)) 8798 8799 if isinstance(item1, str): 8800 return bool(super().DeleteScenario(item1)) 8801 8802 return self._Entity.DeleteScenario(item1) 8803 8804 def Get(self, item1 = None) -> LoadPropertyUserFeaPanelRow: 8805 if isinstance(item1, str): 8806 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8807 8808 if isinstance(item1, int): 8809 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8810 8811 return LoadPropertyUserFeaPanelRow(self._Entity.Get(item1)) 8812 8813 def __getitem__(self, index: int): 8814 return self.LoadPropertyUserFeaPanelRowColList[index] 8815 8816 def __iter__(self): 8817 yield from self.LoadPropertyUserFeaPanelRowColList 8818 8819 def __len__(self): 8820 return len(self.LoadPropertyUserFeaPanelRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8804 def Get(self, item1 = None) -> LoadPropertyUserFeaPanelRow: 8805 if isinstance(item1, str): 8806 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8807 8808 if isinstance(item1, int): 8809 return LoadPropertyUserFeaPanelRow(super().Get(item1)) 8810 8811 return LoadPropertyUserFeaPanelRow(self._Entity.Get(item1))
8823class LoadPropertyUserFeaPanel(LoadProperty): 8824 def __init__(self, loadPropertyUserFeaPanel: _api.LoadPropertyUserFeaPanel): 8825 self._Entity = loadPropertyUserFeaPanel 8826 8827 @property 8828 def UserFeaRows(self) -> LoadPropertyUserFeaPanelRowCol: 8829 result = self._Entity.UserFeaRows 8830 return LoadPropertyUserFeaPanelRowCol(result) if result is not None else None 8831 8832 def SetIsZeroCurvature(self, isZeroCurvature: bool) -> None: 8833 return self._Entity.SetIsZeroCurvature(isZeroCurvature)
Represents an entity with an ID and Name.
Inherited Members
8836class LoadPropertyUserGeneralDoubleRow(IdNameEntity): 8837 def __init__(self, loadPropertyUserGeneralDoubleRow: _api.LoadPropertyUserGeneralDoubleRow): 8838 self._Entity = loadPropertyUserGeneralDoubleRow 8839 8840 @property 8841 def MechanicalRow(self) -> LoadPropertyUserRow: 8842 thisClass = type(self._Entity.MechanicalRow).__name__ 8843 givenClass = LoadPropertyUserRow 8844 for subclass in LoadPropertyUserRow.__subclasses__(): 8845 if subclass.__name__ == thisClass: 8846 givenClass = subclass 8847 result = self._Entity.MechanicalRow 8848 return givenClass(result) if result is not None else None 8849 8850 @property 8851 def ThermalRow(self) -> LoadPropertyUserRow: 8852 thisClass = type(self._Entity.ThermalRow).__name__ 8853 givenClass = LoadPropertyUserRow 8854 for subclass in LoadPropertyUserRow.__subclasses__(): 8855 if subclass.__name__ == thisClass: 8856 givenClass = subclass 8857 result = self._Entity.ThermalRow 8858 return givenClass(result) if result is not None else None 8859 8860 def SetName(self, name: str) -> None: 8861 return self._Entity.SetName(name)
Represents an entity with an ID and Name.
8840 @property 8841 def MechanicalRow(self) -> LoadPropertyUserRow: 8842 thisClass = type(self._Entity.MechanicalRow).__name__ 8843 givenClass = LoadPropertyUserRow 8844 for subclass in LoadPropertyUserRow.__subclasses__(): 8845 if subclass.__name__ == thisClass: 8846 givenClass = subclass 8847 result = self._Entity.MechanicalRow 8848 return givenClass(result) if result is not None else None
8850 @property 8851 def ThermalRow(self) -> LoadPropertyUserRow: 8852 thisClass = type(self._Entity.ThermalRow).__name__ 8853 givenClass = LoadPropertyUserRow 8854 for subclass in LoadPropertyUserRow.__subclasses__(): 8855 if subclass.__name__ == thisClass: 8856 givenClass = subclass 8857 result = self._Entity.ThermalRow 8858 return givenClass(result) if result is not None else None
Inherited Members
8864class LoadPropertyUserGeneralBeamDoubleRow(LoadPropertyUserGeneralDoubleRow): 8865 def __init__(self, loadPropertyUserGeneralBeamDoubleRow: _api.LoadPropertyUserGeneralBeamDoubleRow): 8866 self._Entity = loadPropertyUserGeneralBeamDoubleRow 8867 8868 @property 8869 def MechanicalRow(self) -> LoadPropertyUserRow: 8870 thisClass = type(self._Entity.MechanicalRow).__name__ 8871 givenClass = LoadPropertyUserRow 8872 for subclass in LoadPropertyUserRow.__subclasses__(): 8873 if subclass.__name__ == thisClass: 8874 givenClass = subclass 8875 result = self._Entity.MechanicalRow 8876 return givenClass(result) if result is not None else None 8877 8878 @property 8879 def ThermalRow(self) -> LoadPropertyUserRow: 8880 thisClass = type(self._Entity.ThermalRow).__name__ 8881 givenClass = LoadPropertyUserRow 8882 for subclass in LoadPropertyUserRow.__subclasses__(): 8883 if subclass.__name__ == thisClass: 8884 givenClass = subclass 8885 result = self._Entity.ThermalRow 8886 return givenClass(result) if result is not None else None 8887 8888 @property 8889 def M1AType(self) -> types.BoundaryConditionType: 8890 return types.BoundaryConditionType[self._Entity.M1AType.ToString()] 8891 8892 @property 8893 def M2AType(self) -> types.BoundaryConditionType: 8894 return types.BoundaryConditionType[self._Entity.M2AType.ToString()] 8895 8896 @property 8897 def M1BType(self) -> types.BoundaryConditionType: 8898 return types.BoundaryConditionType[self._Entity.M1BType.ToString()] 8899 8900 @property 8901 def M2BType(self) -> types.BoundaryConditionType: 8902 return types.BoundaryConditionType[self._Entity.M2BType.ToString()] 8903 8904 @property 8905 def V1Type(self) -> types.BoundaryConditionType: 8906 return types.BoundaryConditionType[self._Entity.V1Type.ToString()] 8907 8908 @property 8909 def V2Type(self) -> types.BoundaryConditionType: 8910 return types.BoundaryConditionType[self._Entity.V2Type.ToString()] 8911 8912 @property 8913 def AxialType(self) -> types.BoundaryConditionType: 8914 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 8915 8916 @property 8917 def TorqueType(self) -> types.BoundaryConditionType: 8918 return types.BoundaryConditionType[self._Entity.TorqueType.ToString()] 8919 8920 def SetM1AType(self, type: types.BoundaryConditionType) -> None: 8921 return self._Entity.SetM1AType(_types.BoundaryConditionType(type.value)) 8922 8923 def SetM2AType(self, type: types.BoundaryConditionType) -> None: 8924 return self._Entity.SetM2AType(_types.BoundaryConditionType(type.value)) 8925 8926 def SetM1BType(self, type: types.BoundaryConditionType) -> None: 8927 return self._Entity.SetM1BType(_types.BoundaryConditionType(type.value)) 8928 8929 def SetM2BType(self, type: types.BoundaryConditionType) -> None: 8930 return self._Entity.SetM2BType(_types.BoundaryConditionType(type.value)) 8931 8932 def SetV1Type(self, type: types.BoundaryConditionType) -> None: 8933 return self._Entity.SetV1Type(_types.BoundaryConditionType(type.value)) 8934 8935 def SetV2Type(self, type: types.BoundaryConditionType) -> None: 8936 return self._Entity.SetV2Type(_types.BoundaryConditionType(type.value)) 8937 8938 def SetAxialType(self, type: types.BoundaryConditionType) -> None: 8939 return self._Entity.SetAxialType(_types.BoundaryConditionType(type.value)) 8940 8941 def SetTorqueType(self, type: types.BoundaryConditionType) -> None: 8942 return self._Entity.SetTorqueType(_types.BoundaryConditionType(type.value))
Represents an entity with an ID and Name.
8868 @property 8869 def MechanicalRow(self) -> LoadPropertyUserRow: 8870 thisClass = type(self._Entity.MechanicalRow).__name__ 8871 givenClass = LoadPropertyUserRow 8872 for subclass in LoadPropertyUserRow.__subclasses__(): 8873 if subclass.__name__ == thisClass: 8874 givenClass = subclass 8875 result = self._Entity.MechanicalRow 8876 return givenClass(result) if result is not None else None
8878 @property 8879 def ThermalRow(self) -> LoadPropertyUserRow: 8880 thisClass = type(self._Entity.ThermalRow).__name__ 8881 givenClass = LoadPropertyUserRow 8882 for subclass in LoadPropertyUserRow.__subclasses__(): 8883 if subclass.__name__ == thisClass: 8884 givenClass = subclass 8885 result = self._Entity.ThermalRow 8886 return givenClass(result) if result is not None else None
Inherited Members
8945class LoadPropertyUserGeneralRowCol(IdNameEntityCol, Generic[T]): 8946 def __init__(self, loadPropertyUserGeneralRowCol: _api.LoadPropertyUserGeneralRowCol): 8947 self._Entity = loadPropertyUserGeneralRowCol 8948 self._CollectedClass = T 8949 8950 @property 8951 def LoadPropertyUserGeneralRowColList(self) -> tuple[T]: 8952 if self._Entity.Count() <= 0: 8953 return () 8954 thisClass = type(self._Entity._items[0]).__name__ 8955 givenClass = T 8956 for subclass in T.__subclasses__(): 8957 if subclass.__name__ == thisClass: 8958 givenClass = subclass 8959 return tuple([givenClass(loadPropertyUserGeneralRowCol) for loadPropertyUserGeneralRowCol in self._Entity]) 8960 8961 def AddScenario(self, name: str = None) -> T: 8962 return self._Entity.AddScenario(name) 8963 8964 @overload 8965 def DeleteScenario(self, scenarioId: int) -> bool: ... 8966 8967 @overload 8968 def DeleteScenario(self, scenarioName: str) -> bool: ... 8969 8970 @overload 8971 def Get(self, name: str) -> T: ... 8972 8973 @overload 8974 def Get(self, id: int) -> T: ... 8975 8976 def DeleteScenario(self, item1 = None) -> bool: 8977 if isinstance(item1, int): 8978 return self._Entity.DeleteScenario(item1) 8979 8980 if isinstance(item1, str): 8981 return self._Entity.DeleteScenario(item1) 8982 8983 return self._Entity.DeleteScenario(item1) 8984 8985 def Get(self, item1 = None) -> T: 8986 if isinstance(item1, str): 8987 return super().Get(item1) 8988 8989 if isinstance(item1, int): 8990 return super().Get(item1) 8991 8992 return self._Entity.Get(item1) 8993 8994 def __getitem__(self, index: int): 8995 return self.LoadPropertyUserGeneralRowColList[index] 8996 8997 def __iter__(self): 8998 yield from self.LoadPropertyUserGeneralRowColList 8999 9000 def __len__(self): 9001 return len(self.LoadPropertyUserGeneralRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
8950 @property 8951 def LoadPropertyUserGeneralRowColList(self) -> tuple[T]: 8952 if self._Entity.Count() <= 0: 8953 return () 8954 thisClass = type(self._Entity._items[0]).__name__ 8955 givenClass = T 8956 for subclass in T.__subclasses__(): 8957 if subclass.__name__ == thisClass: 8958 givenClass = subclass 8959 return tuple([givenClass(loadPropertyUserGeneralRowCol) for loadPropertyUserGeneralRowCol in self._Entity])
Inherited Members
9004class LoadPropertyUserGeneralBeamRowCol(LoadPropertyUserGeneralRowCol[LoadPropertyUserGeneralBeamDoubleRow]): 9005 def __init__(self, loadPropertyUserGeneralBeamRowCol: _api.LoadPropertyUserGeneralBeamRowCol): 9006 self._Entity = loadPropertyUserGeneralBeamRowCol 9007 self._CollectedClass = LoadPropertyUserGeneralBeamDoubleRow 9008 9009 @property 9010 def LoadPropertyUserGeneralBeamRowColList(self) -> tuple[LoadPropertyUserGeneralBeamDoubleRow]: 9011 return tuple([LoadPropertyUserGeneralBeamDoubleRow(loadPropertyUserGeneralBeamRowCol) for loadPropertyUserGeneralBeamRowCol in self._Entity]) 9012 9013 @overload 9014 def DeleteScenario(self, scenarioId: int) -> bool: ... 9015 9016 @overload 9017 def DeleteScenario(self, scenarioName: str) -> bool: ... 9018 9019 @overload 9020 def Get(self, name: str) -> LoadPropertyUserGeneralBeamDoubleRow: ... 9021 9022 @overload 9023 def Get(self, id: int) -> LoadPropertyUserGeneralBeamDoubleRow: ... 9024 9025 def DeleteScenario(self, item1 = None) -> bool: 9026 if isinstance(item1, int): 9027 return bool(super().DeleteScenario(item1)) 9028 9029 if isinstance(item1, str): 9030 return bool(super().DeleteScenario(item1)) 9031 9032 return self._Entity.DeleteScenario(item1) 9033 9034 def Get(self, item1 = None) -> LoadPropertyUserGeneralBeamDoubleRow: 9035 if isinstance(item1, str): 9036 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 9037 9038 if isinstance(item1, int): 9039 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 9040 9041 return LoadPropertyUserGeneralBeamDoubleRow(self._Entity.Get(item1)) 9042 9043 def __getitem__(self, index: int): 9044 return self.LoadPropertyUserGeneralBeamRowColList[index] 9045 9046 def __iter__(self): 9047 yield from self.LoadPropertyUserGeneralBeamRowColList 9048 9049 def __len__(self): 9050 return len(self.LoadPropertyUserGeneralBeamRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
9034 def Get(self, item1 = None) -> LoadPropertyUserGeneralBeamDoubleRow: 9035 if isinstance(item1, str): 9036 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 9037 9038 if isinstance(item1, int): 9039 return LoadPropertyUserGeneralBeamDoubleRow(super().Get(item1)) 9040 9041 return LoadPropertyUserGeneralBeamDoubleRow(self._Entity.Get(item1))
9053class LoadPropertyUserGeneralBeam(LoadProperty): 9054 def __init__(self, loadPropertyUserGeneralBeam: _api.LoadPropertyUserGeneralBeam): 9055 self._Entity = loadPropertyUserGeneralBeam 9056 9057 @property 9058 def UserGeneralRows(self) -> LoadPropertyUserGeneralBeamRowCol: 9059 result = self._Entity.UserGeneralRows 9060 return LoadPropertyUserGeneralBeamRowCol(result) if result is not None else None 9061 9062 @property 9063 def IsIncludingThermal(self) -> bool: 9064 return self._Entity.IsIncludingThermal 9065 9066 @IsIncludingThermal.setter 9067 def IsIncludingThermal(self, value: bool) -> None: 9068 self._Entity.IsIncludingThermal = value
Represents an entity with an ID and Name.
Inherited Members
9071class LoadPropertyUserGeneralBoltedRow(IdEntity): 9072 def __init__(self, loadPropertyUserGeneralBoltedRow: _api.LoadPropertyUserGeneralBoltedRow): 9073 self._Entity = loadPropertyUserGeneralBoltedRow 9074 9075 @property 9076 def LoadPropertyId(self) -> int: 9077 return self._Entity.LoadPropertyId 9078 9079 @property 9080 def LoadScenarioId(self) -> int: 9081 return self._Entity.LoadScenarioId 9082 9083 @property 9084 def Fx(self) -> float: 9085 return self._Entity.Fx 9086 9087 @property 9088 def Fy(self) -> float: 9089 return self._Entity.Fy 9090 9091 @property 9092 def Fz(self) -> float: 9093 return self._Entity.Fz 9094 9095 @property 9096 def Mx(self) -> float: 9097 return self._Entity.Mx 9098 9099 @property 9100 def My(self) -> float: 9101 return self._Entity.My 9102 9103 @property 9104 def Mz(self) -> float: 9105 return self._Entity.Mz 9106 9107 @property 9108 def NxBypass(self) -> float: 9109 return self._Entity.NxBypass 9110 9111 @property 9112 def NyBypass(self) -> float: 9113 return self._Entity.NyBypass 9114 9115 @property 9116 def NxyBypass(self) -> float: 9117 return self._Entity.NxyBypass 9118 9119 @property 9120 def LimitFactor(self) -> float: 9121 return self._Entity.LimitFactor 9122 9123 @property 9124 def UltimateFactor(self) -> float: 9125 return self._Entity.UltimateFactor 9126 9127 @Fx.setter 9128 def Fx(self, value: float) -> None: 9129 self._Entity.Fx = value 9130 9131 @Fy.setter 9132 def Fy(self, value: float) -> None: 9133 self._Entity.Fy = value 9134 9135 @Fz.setter 9136 def Fz(self, value: float) -> None: 9137 self._Entity.Fz = value 9138 9139 @Mx.setter 9140 def Mx(self, value: float) -> None: 9141 self._Entity.Mx = value 9142 9143 @My.setter 9144 def My(self, value: float) -> None: 9145 self._Entity.My = value 9146 9147 @Mz.setter 9148 def Mz(self, value: float) -> None: 9149 self._Entity.Mz = value 9150 9151 @NxBypass.setter 9152 def NxBypass(self, value: float) -> None: 9153 self._Entity.NxBypass = value 9154 9155 @NyBypass.setter 9156 def NyBypass(self, value: float) -> None: 9157 self._Entity.NyBypass = value 9158 9159 @NxyBypass.setter 9160 def NxyBypass(self, value: float) -> None: 9161 self._Entity.NxyBypass = value 9162 9163 @LimitFactor.setter 9164 def LimitFactor(self, value: float) -> None: 9165 self._Entity.LimitFactor = value 9166 9167 @UltimateFactor.setter 9168 def UltimateFactor(self, value: float) -> None: 9169 self._Entity.UltimateFactor = value
Represents an entity with an ID.
9172class LoadPropertyUserGeneralBoltedRowCol(IdEntityCol[LoadPropertyUserGeneralBoltedRow]): 9173 def __init__(self, loadPropertyUserGeneralBoltedRowCol: _api.LoadPropertyUserGeneralBoltedRowCol): 9174 self._Entity = loadPropertyUserGeneralBoltedRowCol 9175 self._CollectedClass = LoadPropertyUserGeneralBoltedRow 9176 9177 @property 9178 def LoadPropertyUserGeneralBoltedRowColList(self) -> tuple[LoadPropertyUserGeneralBoltedRow]: 9179 return tuple([LoadPropertyUserGeneralBoltedRow(loadPropertyUserGeneralBoltedRowCol) for loadPropertyUserGeneralBoltedRowCol in self._Entity]) 9180 9181 def AddScenario(self) -> None: 9182 ''' 9183 Adds a load scenario with default values 9184 ''' 9185 return self._Entity.AddScenario() 9186 9187 def DeleteScenario(self, scenarioId: int) -> bool: 9188 return self._Entity.DeleteScenario(scenarioId) 9189 9190 def __getitem__(self, index: int): 9191 return self.LoadPropertyUserGeneralBoltedRowColList[index] 9192 9193 def __iter__(self): 9194 yield from self.LoadPropertyUserGeneralBoltedRowColList 9195 9196 def __len__(self): 9197 return len(self.LoadPropertyUserGeneralBoltedRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
9181 def AddScenario(self) -> None: 9182 ''' 9183 Adds a load scenario with default values 9184 ''' 9185 return self._Entity.AddScenario()
Adds a load scenario with default values
Inherited Members
9200class LoadPropertyUserGeneralBolted(LoadProperty): 9201 def __init__(self, loadPropertyUserGeneralBolted: _api.LoadPropertyUserGeneralBolted): 9202 self._Entity = loadPropertyUserGeneralBolted 9203 9204 @property 9205 def UserGeneralBoltedRows(self) -> LoadPropertyUserGeneralBoltedRowCol: 9206 result = self._Entity.UserGeneralBoltedRows 9207 return LoadPropertyUserGeneralBoltedRowCol(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
9210class LoadPropertyUserGeneralBondedRow(IdEntity): 9211 def __init__(self, loadPropertyUserGeneralBondedRow: _api.LoadPropertyUserGeneralBondedRow): 9212 self._Entity = loadPropertyUserGeneralBondedRow 9213 9214 @property 9215 def LoadPropertyId(self) -> int: 9216 return self._Entity.LoadPropertyId 9217 9218 @property 9219 def JointConceptId(self) -> types.JointConceptId: 9220 return types.JointConceptId[self._Entity.JointConceptId.ToString()] 9221 9222 @property 9223 def BondedBcId(self) -> int: 9224 return self._Entity.BondedBcId 9225 9226 @property 9227 def AxialType(self) -> types.BoundaryConditionType: 9228 return types.BoundaryConditionType[self._Entity.AxialType.ToString()] 9229 9230 @property 9231 def MomentType(self) -> types.BoundaryConditionType: 9232 return types.BoundaryConditionType[self._Entity.MomentType.ToString()] 9233 9234 @property 9235 def TransverseType(self) -> types.BoundaryConditionType: 9236 return types.BoundaryConditionType[self._Entity.TransverseType.ToString()] 9237 9238 @property 9239 def ShearType(self) -> types.BoundaryConditionType: 9240 return types.BoundaryConditionType[self._Entity.ShearType.ToString()] 9241 9242 @property 9243 def Axial(self) -> float: 9244 return self._Entity.Axial 9245 9246 @property 9247 def Moment(self) -> float: 9248 return self._Entity.Moment 9249 9250 @property 9251 def Transverse(self) -> float: 9252 return self._Entity.Transverse 9253 9254 @property 9255 def Shear(self) -> float: 9256 return self._Entity.Shear 9257 9258 @AxialType.setter 9259 def AxialType(self, value: types.BoundaryConditionType) -> None: 9260 self._Entity.AxialType = _types.BoundaryConditionType(value.value) 9261 9262 @MomentType.setter 9263 def MomentType(self, value: types.BoundaryConditionType) -> None: 9264 self._Entity.MomentType = _types.BoundaryConditionType(value.value) 9265 9266 @TransverseType.setter 9267 def TransverseType(self, value: types.BoundaryConditionType) -> None: 9268 self._Entity.TransverseType = _types.BoundaryConditionType(value.value) 9269 9270 @ShearType.setter 9271 def ShearType(self, value: types.BoundaryConditionType) -> None: 9272 self._Entity.ShearType = _types.BoundaryConditionType(value.value) 9273 9274 @Axial.setter 9275 def Axial(self, value: float) -> None: 9276 self._Entity.Axial = value 9277 9278 @Moment.setter 9279 def Moment(self, value: float) -> None: 9280 self._Entity.Moment = value 9281 9282 @Transverse.setter 9283 def Transverse(self, value: float) -> None: 9284 self._Entity.Transverse = value 9285 9286 @Shear.setter 9287 def Shear(self, value: float) -> None: 9288 self._Entity.Shear = value 9289 9290 def UpdateRow(self) -> None: 9291 return self._Entity.UpdateRow()
Represents an entity with an ID.
9294class LoadPropertyUserGeneralBondedRowCol(IdEntityCol[LoadPropertyUserGeneralBondedRow]): 9295 def __init__(self, loadPropertyUserGeneralBondedRowCol: _api.LoadPropertyUserGeneralBondedRowCol): 9296 self._Entity = loadPropertyUserGeneralBondedRowCol 9297 self._CollectedClass = LoadPropertyUserGeneralBondedRow 9298 9299 @property 9300 def LoadPropertyUserGeneralBondedRowColList(self) -> tuple[LoadPropertyUserGeneralBondedRow]: 9301 return tuple([LoadPropertyUserGeneralBondedRow(loadPropertyUserGeneralBondedRowCol) for loadPropertyUserGeneralBondedRowCol in self._Entity]) 9302 9303 def __getitem__(self, index: int): 9304 return self.LoadPropertyUserGeneralBondedRowColList[index] 9305 9306 def __iter__(self): 9307 yield from self.LoadPropertyUserGeneralBondedRowColList 9308 9309 def __len__(self): 9310 return len(self.LoadPropertyUserGeneralBondedRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Inherited Members
9313class LoadPropertyJoint(IdEntity): 9314 def __init__(self, loadPropertyJoint: _api.LoadPropertyJoint): 9315 self._Entity = loadPropertyJoint 9316 9317 @property 9318 def UserGeneralBondedRows(self) -> LoadPropertyUserGeneralBondedRowCol: 9319 result = self._Entity.UserGeneralBondedRows 9320 return LoadPropertyUserGeneralBondedRowCol(result) if result is not None else None 9321 9322 @property 9323 def LoadPropertyId(self) -> int: 9324 return self._Entity.LoadPropertyId 9325 9326 @property 9327 def JConceptId(self) -> types.JointConceptId: 9328 return types.JointConceptId[self._Entity.JConceptId.ToString()] 9329 9330 @property 9331 def Ex(self) -> float: 9332 return self._Entity.Ex 9333 9334 @property 9335 def Kx(self) -> float: 9336 return self._Entity.Kx 9337 9338 @property 9339 def Kxy(self) -> float: 9340 return self._Entity.Kxy 9341 9342 @property 9343 def Temperature(self) -> float: 9344 return self._Entity.Temperature 9345 9346 @JConceptId.setter 9347 def JConceptId(self, value: types.JointConceptId) -> None: 9348 self._Entity.JConceptId = _types.JointConceptId(value.value) 9349 9350 @Ex.setter 9351 def Ex(self, value: float) -> None: 9352 self._Entity.Ex = value 9353 9354 @Kx.setter 9355 def Kx(self, value: float) -> None: 9356 self._Entity.Kx = value 9357 9358 @Kxy.setter 9359 def Kxy(self, value: float) -> None: 9360 self._Entity.Kxy = value 9361 9362 @Temperature.setter 9363 def Temperature(self, value: float) -> None: 9364 self._Entity.Temperature = value
Represents an entity with an ID.
9367class LoadPropertyUserGeneralBonded(LoadProperty): 9368 def __init__(self, loadPropertyUserGeneralBonded: _api.LoadPropertyUserGeneralBonded): 9369 self._Entity = loadPropertyUserGeneralBonded 9370 9371 @property 9372 def LoadPropertyJoint(self) -> LoadPropertyJoint: 9373 result = self._Entity.LoadPropertyJoint 9374 return LoadPropertyJoint(result) if result is not None else None
Represents an entity with an ID and Name.
Inherited Members
9377class LoadPropertyUserGeneralPanelDoubleRow(LoadPropertyUserGeneralDoubleRow): 9378 def __init__(self, loadPropertyUserGeneralPanelDoubleRow: _api.LoadPropertyUserGeneralPanelDoubleRow): 9379 self._Entity = loadPropertyUserGeneralPanelDoubleRow 9380 9381 @property 9382 def MechanicalRow(self) -> LoadPropertyUserRow: 9383 thisClass = type(self._Entity.MechanicalRow).__name__ 9384 givenClass = LoadPropertyUserRow 9385 for subclass in LoadPropertyUserRow.__subclasses__(): 9386 if subclass.__name__ == thisClass: 9387 givenClass = subclass 9388 result = self._Entity.MechanicalRow 9389 return givenClass(result) if result is not None else None 9390 9391 @property 9392 def ThermalRow(self) -> LoadPropertyUserRow: 9393 thisClass = type(self._Entity.ThermalRow).__name__ 9394 givenClass = LoadPropertyUserRow 9395 for subclass in LoadPropertyUserRow.__subclasses__(): 9396 if subclass.__name__ == thisClass: 9397 givenClass = subclass 9398 result = self._Entity.ThermalRow 9399 return givenClass(result) if result is not None else None 9400 9401 @property 9402 def NxType(self) -> types.BoundaryConditionType: 9403 return types.BoundaryConditionType[self._Entity.NxType.ToString()] 9404 9405 @property 9406 def NyType(self) -> types.BoundaryConditionType: 9407 return types.BoundaryConditionType[self._Entity.NyType.ToString()] 9408 9409 @property 9410 def NxyType(self) -> types.BoundaryConditionType: 9411 return types.BoundaryConditionType[self._Entity.NxyType.ToString()] 9412 9413 @property 9414 def MxType(self) -> types.BoundaryConditionType: 9415 return types.BoundaryConditionType[self._Entity.MxType.ToString()] 9416 9417 @property 9418 def MyType(self) -> types.BoundaryConditionType: 9419 return types.BoundaryConditionType[self._Entity.MyType.ToString()] 9420 9421 @property 9422 def MxyType(self) -> types.BoundaryConditionType: 9423 return types.BoundaryConditionType[self._Entity.MxyType.ToString()] 9424 9425 @property 9426 def QxType(self) -> types.BoundaryConditionType: 9427 return types.BoundaryConditionType[self._Entity.QxType.ToString()] 9428 9429 @property 9430 def QyType(self) -> types.BoundaryConditionType: 9431 return types.BoundaryConditionType[self._Entity.QyType.ToString()] 9432 9433 def SetNxType(self, type: types.BoundaryConditionType) -> None: 9434 return self._Entity.SetNxType(_types.BoundaryConditionType(type.value)) 9435 9436 def SetNyType(self, type: types.BoundaryConditionType) -> None: 9437 return self._Entity.SetNyType(_types.BoundaryConditionType(type.value)) 9438 9439 def SetNxyType(self, type: types.BoundaryConditionType) -> None: 9440 return self._Entity.SetNxyType(_types.BoundaryConditionType(type.value)) 9441 9442 def SetMxType(self, type: types.BoundaryConditionType) -> None: 9443 return self._Entity.SetMxType(_types.BoundaryConditionType(type.value)) 9444 9445 def SetMyType(self, type: types.BoundaryConditionType) -> None: 9446 return self._Entity.SetMyType(_types.BoundaryConditionType(type.value)) 9447 9448 def SetMxyType(self, type: types.BoundaryConditionType) -> None: 9449 return self._Entity.SetMxyType(_types.BoundaryConditionType(type.value)) 9450 9451 def SetQxType(self, type: types.BoundaryConditionType) -> None: 9452 return self._Entity.SetQxType(_types.BoundaryConditionType(type.value)) 9453 9454 def SetQyType(self, type: types.BoundaryConditionType) -> None: 9455 return self._Entity.SetQyType(_types.BoundaryConditionType(type.value))
Represents an entity with an ID and Name.
9381 @property 9382 def MechanicalRow(self) -> LoadPropertyUserRow: 9383 thisClass = type(self._Entity.MechanicalRow).__name__ 9384 givenClass = LoadPropertyUserRow 9385 for subclass in LoadPropertyUserRow.__subclasses__(): 9386 if subclass.__name__ == thisClass: 9387 givenClass = subclass 9388 result = self._Entity.MechanicalRow 9389 return givenClass(result) if result is not None else None
9391 @property 9392 def ThermalRow(self) -> LoadPropertyUserRow: 9393 thisClass = type(self._Entity.ThermalRow).__name__ 9394 givenClass = LoadPropertyUserRow 9395 for subclass in LoadPropertyUserRow.__subclasses__(): 9396 if subclass.__name__ == thisClass: 9397 givenClass = subclass 9398 result = self._Entity.ThermalRow 9399 return givenClass(result) if result is not None else None
Inherited Members
9458class LoadPropertyUserGeneralPanelRowCol(LoadPropertyUserGeneralRowCol[LoadPropertyUserGeneralPanelDoubleRow]): 9459 def __init__(self, loadPropertyUserGeneralPanelRowCol: _api.LoadPropertyUserGeneralPanelRowCol): 9460 self._Entity = loadPropertyUserGeneralPanelRowCol 9461 self._CollectedClass = LoadPropertyUserGeneralPanelDoubleRow 9462 9463 @property 9464 def LoadPropertyUserGeneralPanelRowColList(self) -> tuple[LoadPropertyUserGeneralPanelDoubleRow]: 9465 return tuple([LoadPropertyUserGeneralPanelDoubleRow(loadPropertyUserGeneralPanelRowCol) for loadPropertyUserGeneralPanelRowCol in self._Entity]) 9466 9467 @overload 9468 def DeleteScenario(self, scenarioId: int) -> bool: ... 9469 9470 @overload 9471 def DeleteScenario(self, scenarioName: str) -> bool: ... 9472 9473 @overload 9474 def Get(self, name: str) -> LoadPropertyUserGeneralPanelDoubleRow: ... 9475 9476 @overload 9477 def Get(self, id: int) -> LoadPropertyUserGeneralPanelDoubleRow: ... 9478 9479 def DeleteScenario(self, item1 = None) -> bool: 9480 if isinstance(item1, int): 9481 return bool(super().DeleteScenario(item1)) 9482 9483 if isinstance(item1, str): 9484 return bool(super().DeleteScenario(item1)) 9485 9486 return self._Entity.DeleteScenario(item1) 9487 9488 def Get(self, item1 = None) -> LoadPropertyUserGeneralPanelDoubleRow: 9489 if isinstance(item1, str): 9490 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9491 9492 if isinstance(item1, int): 9493 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9494 9495 return LoadPropertyUserGeneralPanelDoubleRow(self._Entity.Get(item1)) 9496 9497 def __getitem__(self, index: int): 9498 return self.LoadPropertyUserGeneralPanelRowColList[index] 9499 9500 def __iter__(self): 9501 yield from self.LoadPropertyUserGeneralPanelRowColList 9502 9503 def __len__(self): 9504 return len(self.LoadPropertyUserGeneralPanelRowColList)
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def __getitem__(self, key: KT) -> VT: ... # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
9488 def Get(self, item1 = None) -> LoadPropertyUserGeneralPanelDoubleRow: 9489 if isinstance(item1, str): 9490 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9491 9492 if isinstance(item1, int): 9493 return LoadPropertyUserGeneralPanelDoubleRow(super().Get(item1)) 9494 9495 return LoadPropertyUserGeneralPanelDoubleRow(self._Entity.Get(item1))
9507class LoadPropertyUserGeneralPanel(LoadProperty): 9508 def __init__(self, loadPropertyUserGeneralPanel: _api.LoadPropertyUserGeneralPanel): 9509 self._Entity = loadPropertyUserGeneralPanel 9510 9511 @property 9512 def UserGeneralRows(self) -> LoadPropertyUserGeneralPanelRowCol: 9513 result = self._Entity.UserGeneralRows 9514 return LoadPropertyUserGeneralPanelRowCol(result) if result is not None else None 9515 9516 @property 9517 def IsIncludingThermal(self) -> bool: 9518 return self._Entity.IsIncludingThermal 9519 9520 @IsIncludingThermal.setter 9521 def IsIncludingThermal(self, value: bool) -> None: 9522 self._Entity.IsIncludingThermal = value 9523 9524 def SetIsZeroCurvature(self, isZeroCurvature: bool) -> None: 9525 return self._Entity.SetIsZeroCurvature(isZeroCurvature)
Represents an entity with an ID and Name.
Inherited Members
9528class JointSelectionDesignResult(JointDesignResult): 9529 def __init__(self, jointSelectionDesignResult: _api.JointSelectionDesignResult): 9530 self._Entity = jointSelectionDesignResult 9531 9532 @property 9533 def JointSelectionId(self) -> types.JointSelectionId: 9534 return types.JointSelectionId[self._Entity.JointSelectionId.ToString()]
Represents an entity with an ID.
9537class JointFastenerDesignResult(JointSelectionDesignResult): 9538 def __init__(self, jointFastenerDesignResult: _api.JointFastenerDesignResult): 9539 self._Entity = jointFastenerDesignResult 9540 9541 @property 9542 def FastenerBoltId(self) -> int: 9543 return self._Entity.FastenerBoltId 9544 9545 @property 9546 def FastenerCodeId(self) -> int: 9547 return self._Entity.FastenerCodeId
Represents an entity with an ID.
Inherited Members
9550class JointMaterialDesignResult(JointSelectionDesignResult): 9551 def __init__(self, jointMaterialDesignResult: _api.JointMaterialDesignResult): 9552 self._Entity = jointMaterialDesignResult 9553 9554 @property 9555 def MaterialId(self) -> int: 9556 return self._Entity.MaterialId 9557 9558 @property 9559 def MaterialType(self) -> types.MaterialType: 9560 ''' 9561 Represents a material's type. 9562 ''' 9563 return types.MaterialType[self._Entity.MaterialType.ToString()]
Represents an entity with an ID.
9558 @property 9559 def MaterialType(self) -> types.MaterialType: 9560 ''' 9561 Represents a material's type. 9562 ''' 9563 return types.MaterialType[self._Entity.MaterialType.ToString()]
Represents a material's type.
Inherited Members
9566class JointRangeDesignResult(JointDesignResult): 9567 def __init__(self, jointRangeDesignResult: _api.JointRangeDesignResult): 9568 self._Entity = jointRangeDesignResult 9569 9570 @property 9571 def JointRangeId(self) -> types.JointRangeId: 9572 return types.JointRangeId[self._Entity.JointRangeId.ToString()] 9573 9574 @property 9575 def Value(self) -> float: 9576 return self._Entity.Value
Represents an entity with an ID.
9579class JointRivetDesignResult(JointSelectionDesignResult): 9580 def __init__(self, jointRivetDesignResult: _api.JointRivetDesignResult): 9581 self._Entity = jointRivetDesignResult 9582 9583 @property 9584 def RivetId(self) -> int: 9585 return self._Entity.RivetId 9586 9587 @property 9588 def RivetDiameterId(self) -> int: 9589 return self._Entity.RivetDiameterId
Represents an entity with an ID.
Inherited Members
9592class Environment(ABC): 9593 ''' 9594 Represents HyperX's execution environment (where HyperX is installed). 9595 ''' 9596 def __init__(self, environment: _api.Environment): 9597 self._Entity = environment 9598 9599 def SetLocation(location: str) -> None: 9600 return _api.Environment.SetLocation(location) 9601 9602 def Initialize() -> None: 9603 ''' 9604 Initialize the HyperX scripting environment. 9605 ''' 9606 return _api.Environment.Initialize()
Represents HyperX's execution environment (where HyperX is installed).
9609class FailureCriterionSetting(FailureSetting): 9610 ''' 9611 Setting for a Failure Criteria. 9612 ''' 9613 def __init__(self, failureCriterionSetting: _api.FailureCriterionSetting): 9614 self._Entity = failureCriterionSetting
Setting for a Failure Criteria.
9617class FailureModeSetting(FailureSetting): 9618 ''' 9619 Setting for a Failure Mode. 9620 ''' 9621 def __init__(self, failureModeSetting: _api.FailureModeSetting): 9622 self._Entity = failureModeSetting
Setting for a Failure Mode.
9625class HelperFunctions(ABC): 9626 def __init__(self, helperFunctions: _api.HelperFunctions): 9627 self._Entity = helperFunctions 9628 9629 def NullableSingle(input: float) -> float: 9630 return _api.HelperFunctions.NullableSingle(input)
9640class LaminatePlyData: 9641 ''' 9642 Per ply data for Laminate materials 9643 ''' 9644 def __init__(self, laminatePlyData: _api.LaminatePlyData): 9645 self._Entity = laminatePlyData 9646 9647 @property 9648 def MaterialId(self) -> int: 9649 return self._Entity.MaterialId 9650 9651 @property 9652 def PlyId(self) -> int: 9653 return self._Entity.PlyId 9654 9655 @property 9656 def PlyMaterialId(self) -> int: 9657 return self._Entity.PlyMaterialId 9658 9659 @property 9660 def PlyMaterialType(self) -> types.MaterialType: 9661 ''' 9662 Represents a material's type. 9663 ''' 9664 return types.MaterialType[self._Entity.PlyMaterialType.ToString()] 9665 9666 @property 9667 def Angle(self) -> float: 9668 return self._Entity.Angle 9669 9670 @property 9671 def Thickness(self) -> float: 9672 return self._Entity.Thickness 9673 9674 @property 9675 def IsFabric(self) -> bool: 9676 return self._Entity.IsFabric 9677 9678 @property 9679 def FamilyPlyId(self) -> int: 9680 return self._Entity.FamilyPlyId 9681 9682 @property 9683 def OriginalPlyId(self) -> int: 9684 return self._Entity.OriginalPlyId 9685 9686 @property 9687 def OriginalFamilyPlyId(self) -> int: 9688 return self._Entity.OriginalFamilyPlyId 9689 9690 @property 9691 def DisplaySequenceId(self) -> int: 9692 return self._Entity.DisplaySequenceId 9693 9694 @property 9695 def PlyStiffenerSubType(self) -> types.PlyStiffenerSubType: 9696 return types.PlyStiffenerSubType[self._Entity.PlyStiffenerSubType.ToString()] 9697 9698 @property 9699 def Object1(self) -> bool: 9700 return self._Entity.Object1 9701 9702 @property 9703 def Object2(self) -> bool: 9704 return self._Entity.Object2 9705 9706 @property 9707 def Object3(self) -> bool: 9708 return self._Entity.Object3 9709 9710 @property 9711 def IsInverted(self) -> bool: 9712 return self._Entity.IsInverted 9713 9714 @property 9715 def IsFullStructure(self) -> bool: 9716 return self._Entity.IsFullStructure 9717 9718 @property 9719 def UseTrueFiberDirection(self) -> bool: 9720 return self._Entity.UseTrueFiberDirection 9721 9722 @property 9723 def IsInFoot(self) -> bool: 9724 return self._Entity.IsInFoot 9725 9726 @property 9727 def IsInWeb(self) -> bool: 9728 return self._Entity.IsInWeb 9729 9730 @property 9731 def IsInCap(self) -> bool: 9732 return self._Entity.IsInCap 9733 9734 def SetMaterial(self, matId: int) -> bool: 9735 return self._Entity.SetMaterial(matId) 9736 9737 def SetAngle(self, angle: float) -> bool: 9738 return self._Entity.SetAngle(angle)
Per ply data for Laminate materials
9659 @property 9660 def PlyMaterialType(self) -> types.MaterialType: 9661 ''' 9662 Represents a material's type. 9663 ''' 9664 return types.MaterialType[self._Entity.PlyMaterialType.ToString()]
Represents a material's type.
9741class Beam(Zone): 9742 def __init__(self, beam: _api.Beam): 9743 self._Entity = beam 9744 9745 @property 9746 def Length(self) -> float: 9747 return self._Entity.Length 9748 9749 @property 9750 def Phi(self) -> float: 9751 return self._Entity.Phi 9752 9753 @property 9754 def K1(self) -> float: 9755 return self._Entity.K1 9756 9757 @property 9758 def K2(self) -> float: 9759 return self._Entity.K2 9760 9761 @property 9762 def ReferencePlane(self) -> types.ReferencePlaneBeam: 9763 return types.ReferencePlaneBeam[self._Entity.ReferencePlane.ToString()] 9764 9765 @Phi.setter 9766 def Phi(self, value: float) -> None: 9767 self._Entity.Phi = value 9768 9769 @K1.setter 9770 def K1(self, value: float) -> None: 9771 self._Entity.K1 = value 9772 9773 @K2.setter 9774 def K2(self, value: float) -> None: 9775 self._Entity.K2 = value 9776 9777 @ReferencePlane.setter 9778 def ReferencePlane(self, value: types.ReferencePlaneBeam) -> None: 9779 self._Entity.ReferencePlane = _types.ReferencePlaneBeam(value.value)
Abstract for regular Zones (not Panel Segments).
Inherited Members
- ZoneBase
- Centroid
- Id
- Weight
- NonOptimumFactor
- AddedWeight
- SuperimposePanel
- BucklingImperfection
- IsBeamColumn
- SuperimposeBoundaryCondition
- IsZeroOutFeaMoments
- IsZeroOutFeaTransverseShears
- MechanicalLimit
- MechanicalUltimate
- ThermalHelp
- ThermalHurt
- FatigueKTSkin
- FatigueKTStiff
- XSpan
- EARequired
- EI1Required
- EI2Required
- GJRequired
- EAAuto
- EI1Auto
- EI2Auto
- GJAuto
- Ex
- Dmid
- GetObjectName
- GetConceptName
- GetZoneDesignResults
- RenumberZone
- GetAllResults
- GetControllingResult
- GetMinimumMargin
9782class ZoneBulkUpdaterBase(BulkUpdaterBase): 9783 def __init__(self, zoneBulkUpdaterBase: _api.ZoneBulkUpdaterBase): 9784 self._Entity = zoneBulkUpdaterBase
Inherited Members
9787class BeamBulkUpdater(ZoneBulkUpdaterBase): 9788 def __init__(self, beamBulkUpdater: _api.BeamBulkUpdater): 9789 self._Entity = beamBulkUpdater 9790 9791 def GetBulkUpdater(application: Application, items: list[Beam]) -> BeamBulkUpdater: 9792 itemsList = List[_api.Beam]() 9793 if items is not None: 9794 for thing in items: 9795 if thing is not None: 9796 itemsList.Add(thing._Entity) 9797 return BeamBulkUpdater(_api.BeamBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
9791 def GetBulkUpdater(application: Application, items: list[Beam]) -> BeamBulkUpdater: 9792 itemsList = List[_api.Beam]() 9793 if items is not None: 9794 for thing in items: 9795 if thing is not None: 9796 itemsList.Add(thing._Entity) 9797 return BeamBulkUpdater(_api.BeamBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
9800class Panel(Zone): 9801 def __init__(self, panel: _api.Panel): 9802 self._Entity = panel 9803 9804 @property 9805 def Area(self) -> float: 9806 return self._Entity.Area 9807 9808 @property 9809 def ReferencePlane(self) -> types.ReferencePlanePanel: 9810 return types.ReferencePlanePanel[self._Entity.ReferencePlane.ToString()] 9811 9812 @property 9813 def AddedOffset(self) -> float: 9814 return self._Entity.AddedOffset 9815 9816 @property 9817 def YSpan(self) -> float: 9818 return self._Entity.YSpan 9819 9820 @property 9821 def IsCurved(self) -> bool: 9822 return self._Entity.IsCurved 9823 9824 @property 9825 def Radius(self) -> float: 9826 return self._Entity.Radius 9827 9828 @property 9829 def IsFullCylinder(self) -> bool: 9830 return self._Entity.IsFullCylinder 9831 9832 @property 9833 def BucklingMode(self) -> types.ZoneBucklingMode: 9834 return types.ZoneBucklingMode[self._Entity.BucklingMode.ToString()] 9835 9836 @property 9837 def PerformLocalPostbuckling(self) -> bool: 9838 return self._Entity.PerformLocalPostbuckling 9839 9840 @property 9841 def A11Required(self) -> float: 9842 return self._Entity.A11Required 9843 9844 @property 9845 def A22Required(self) -> float: 9846 return self._Entity.A22Required 9847 9848 @property 9849 def A33Required(self) -> float: 9850 return self._Entity.A33Required 9851 9852 @property 9853 def D11Required(self) -> float: 9854 return self._Entity.D11Required 9855 9856 @property 9857 def D22Required(self) -> float: 9858 return self._Entity.D22Required 9859 9860 @property 9861 def D33Required(self) -> float: 9862 return self._Entity.D33Required 9863 9864 @property 9865 def A11Auto(self) -> float: 9866 return self._Entity.A11Auto 9867 9868 @property 9869 def A22Auto(self) -> float: 9870 return self._Entity.A22Auto 9871 9872 @property 9873 def A33Auto(self) -> float: 9874 return self._Entity.A33Auto 9875 9876 @property 9877 def D11Auto(self) -> float: 9878 return self._Entity.D11Auto 9879 9880 @property 9881 def D22Auto(self) -> float: 9882 return self._Entity.D22Auto 9883 9884 @property 9885 def D33Auto(self) -> float: 9886 return self._Entity.D33Auto 9887 9888 @property 9889 def Ey(self) -> float: 9890 return self._Entity.Ey 9891 9892 @property 9893 def Kx(self) -> float: 9894 return self._Entity.Kx 9895 9896 @property 9897 def Ky(self) -> float: 9898 return self._Entity.Ky 9899 9900 @property 9901 def HoneycombCoreAngle(self) -> float: 9902 return self._Entity.HoneycombCoreAngle 9903 9904 @ReferencePlane.setter 9905 def ReferencePlane(self, value: types.ReferencePlanePanel) -> None: 9906 self._Entity.ReferencePlane = _types.ReferencePlanePanel(value.value) 9907 9908 @AddedOffset.setter 9909 def AddedOffset(self, value: float) -> None: 9910 self._Entity.AddedOffset = value 9911 9912 @YSpan.setter 9913 def YSpan(self, value: float) -> None: 9914 self._Entity.YSpan = value 9915 9916 @IsCurved.setter 9917 def IsCurved(self, value: bool) -> None: 9918 self._Entity.IsCurved = value 9919 9920 @Radius.setter 9921 def Radius(self, value: float) -> None: 9922 self._Entity.Radius = value 9923 9924 @IsFullCylinder.setter 9925 def IsFullCylinder(self, value: bool) -> None: 9926 self._Entity.IsFullCylinder = value 9927 9928 @BucklingMode.setter 9929 def BucklingMode(self, value: types.ZoneBucklingMode) -> None: 9930 self._Entity.BucklingMode = _types.ZoneBucklingMode(value.value) 9931 9932 @PerformLocalPostbuckling.setter 9933 def PerformLocalPostbuckling(self, value: bool) -> None: 9934 self._Entity.PerformLocalPostbuckling = value 9935 9936 @A11Required.setter 9937 def A11Required(self, value: float) -> None: 9938 self._Entity.A11Required = value 9939 9940 @A22Required.setter 9941 def A22Required(self, value: float) -> None: 9942 self._Entity.A22Required = value 9943 9944 @A33Required.setter 9945 def A33Required(self, value: float) -> None: 9946 self._Entity.A33Required = value 9947 9948 @D11Required.setter 9949 def D11Required(self, value: float) -> None: 9950 self._Entity.D11Required = value 9951 9952 @D22Required.setter 9953 def D22Required(self, value: float) -> None: 9954 self._Entity.D22Required = value 9955 9956 @D33Required.setter 9957 def D33Required(self, value: float) -> None: 9958 self._Entity.D33Required = value 9959 9960 @Ey.setter 9961 def Ey(self, value: float) -> None: 9962 self._Entity.Ey = value 9963 9964 @Kx.setter 9965 def Kx(self, value: float) -> None: 9966 self._Entity.Kx = value 9967 9968 @Ky.setter 9969 def Ky(self, value: float) -> None: 9970 self._Entity.Ky = value 9971 9972 @HoneycombCoreAngle.setter 9973 def HoneycombCoreAngle(self, value: float) -> None: 9974 self._Entity.HoneycombCoreAngle = value
Abstract for regular Zones (not Panel Segments).
Inherited Members
- ZoneBase
- Centroid
- Id
- Weight
- NonOptimumFactor
- AddedWeight
- SuperimposePanel
- BucklingImperfection
- IsBeamColumn
- SuperimposeBoundaryCondition
- IsZeroOutFeaMoments
- IsZeroOutFeaTransverseShears
- MechanicalLimit
- MechanicalUltimate
- ThermalHelp
- ThermalHurt
- FatigueKTSkin
- FatigueKTStiff
- XSpan
- EARequired
- EI1Required
- EI2Required
- GJRequired
- EAAuto
- EI1Auto
- EI2Auto
- GJAuto
- Ex
- Dmid
- GetObjectName
- GetConceptName
- GetZoneDesignResults
- RenumberZone
- GetAllResults
- GetControllingResult
- GetMinimumMargin
9977class PanelBulkUpdater(ZoneBulkUpdaterBase): 9978 def __init__(self, panelBulkUpdater: _api.PanelBulkUpdater): 9979 self._Entity = panelBulkUpdater 9980 9981 def GetBulkUpdater(application: Application, items: list[Panel]) -> PanelBulkUpdater: 9982 itemsList = List[_api.Panel]() 9983 if items is not None: 9984 for thing in items: 9985 if thing is not None: 9986 itemsList.Add(thing._Entity) 9987 return PanelBulkUpdater(_api.PanelBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
9981 def GetBulkUpdater(application: Application, items: list[Panel]) -> PanelBulkUpdater: 9982 itemsList = List[_api.Panel]() 9983 if items is not None: 9984 for thing in items: 9985 if thing is not None: 9986 itemsList.Add(thing._Entity) 9987 return PanelBulkUpdater(_api.PanelBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
9990class PanelSegmentBulkUpdater(ZoneBulkUpdaterBase): 9991 def __init__(self, panelSegmentBulkUpdater: _api.PanelSegmentBulkUpdater): 9992 self._Entity = panelSegmentBulkUpdater 9993 9994 def GetBulkUpdater(application: Application, items: list[PanelSegment]) -> PanelSegmentBulkUpdater: 9995 itemsList = List[_api.PanelSegment]() 9996 if items is not None: 9997 for thing in items: 9998 if thing is not None: 9999 itemsList.Add(thing._Entity) 10000 return PanelSegmentBulkUpdater(_api.PanelSegmentBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
9994 def GetBulkUpdater(application: Application, items: list[PanelSegment]) -> PanelSegmentBulkUpdater: 9995 itemsList = List[_api.PanelSegment]() 9996 if items is not None: 9997 for thing in items: 9998 if thing is not None: 9999 itemsList.Add(thing._Entity) 10000 return PanelSegmentBulkUpdater(_api.PanelSegmentBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
Inherited Members
10003class ZoneBulkUpdater(ZoneBulkUpdaterBase): 10004 def __init__(self, zoneBulkUpdater: _api.ZoneBulkUpdater): 10005 self._Entity = zoneBulkUpdater 10006 10007 def GetBulkUpdater(application: Application, items: list[Zone]) -> ZoneBulkUpdater: 10008 itemsList = List[_api.Zone]() 10009 if items is not None: 10010 for thing in items: 10011 if thing is not None: 10012 itemsList.Add(thing._Entity) 10013 return ZoneBulkUpdater(_api.ZoneBulkUpdater.GetBulkUpdater(application._Entity, itemsList))
10007 def GetBulkUpdater(application: Application, items: list[Zone]) -> ZoneBulkUpdater: 10008 itemsList = List[_api.Zone]() 10009 if items is not None: 10010 for thing in items: 10011 if thing is not None: 10012 itemsList.Add(thing._Entity) 10013 return ZoneBulkUpdater(_api.ZoneBulkUpdater.GetBulkUpdater(application._Entity, itemsList))